Details

Time bar (total: 4.6s)

analyze148.0ms (3.2%)

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
37.5%37.5%62.4%0.1%0%0%0%6
50.8%50%48.4%0.1%1.6%0%0%7
60.8%59.3%38.2%0.1%2.3%0%0%8
70.8%67.1%27.7%0.1%5.1%0%0%9
77.3%72.6%21.3%0.1%6%0%0%10
83.9%76.9%14.7%0.1%8.3%0%0%11
87.7%79.8%11.2%0.1%8.9%0%0%12
Compiler

Compiled 10 to 6 computations (40% saved)

sample2.3s (50.9%)

Results
2.1s8255×body256valid
190.0ms319×body256infinite
0.0msbody512valid
Bogosity

preprocess18.0ms (0.4%)

Algorithm
egg-herbie
Rules
12×rational_best.json-simplify-1
rational_best.json-simplify-43
swap-x-y
rational_best.json-simplify-2
trig.json-simplify-49
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01038
11638
22038
32138
022
122
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
0
Call 2
Inputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(+.f64 (+.f64 (*.f64 y x) y) x)
Outputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(+.f64 y (+.f64 x (*.f64 x y)))
(+.f64 x (+.f64 y (*.f64 x y)))
(+.f64 (+.f64 (*.f64 y x) y) x)
(+.f64 y (+.f64 x (*.f64 x y)))
(+.f64 x (+.f64 y (*.f64 x y)))
Symmetry

(sort x y)

Compiler

Compiled 11 to 7 computations (36.4% saved)

simplify16.0ms (0.3%)

Algorithm
egg-herbie
Rules
12×rational_best.json-simplify-1
rational_best.json-simplify-43
rational_best.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
11019
21419
31819
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) x) y)
Outputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(+.f64 y (+.f64 x (*.f64 x y)))

eval0.0ms (0%)

Compiler

Compiled 16 to 7 computations (56.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 9 to 5 computations (44.4% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 19 to 5 computations (73.7% saved)

series3.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

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

rewrite106.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
846×rational_best.json-simplify-83
846×rational_best.json-simplify-82
794×rational_best.json-simplify-57
588×rational_best.json-simplify-80
546×rational_best.json-simplify-49
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0732
16132
221832
394332
4414332
Stop Event
node limit
Counts
2 → 75
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(+.f64 (*.f64 x y) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 y 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 y 1) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 y 1) (*.f64 x (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 y (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 y (*.f64 x (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 (+.f64 y 1) (/.f64 x x)))))) (#(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 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 x y)) (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 x y)) (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 1 (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (+.f64 y 1) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (*.f64 (+.f64 y 1) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (*.f64 (+.f64 x (*.f64 x y)) (*.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))) (#(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 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (+.f64 y y) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 x (*.f64 x y))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (*.f64 x y))))))))

simplify215.0ms (4.7%)

Algorithm
egg-herbie
Rules
1224×rational_best.json-simplify-2
836×rational_best.json-simplify-135
740×rational_best.json-simplify-44
736×rational_best.json-simplify-80
678×rational_best.json-simplify-78
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01663483
13523375
212753369
336193369
458983369
Stop Event
node limit
Counts
123 → 126
Calls
Call 1
Inputs
y
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 (+.f64 1 y) x))
(*.f64 (+.f64 1 y) x)
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 (+.f64 1 y) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
x
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 (*.f64 (+.f64 1 x) y) x)
(*.f64 (+.f64 1 x) y)
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 (*.f64 (+.f64 1 x) y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 (+.f64 1 y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
x
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(-.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 0)
(-.f64 0 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y)))
(*.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 2) 2)
(/.f64 (*.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))) 2) -2)
(pow.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(neg.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))
(-.f64 (+.f64 x (*.f64 x y)) 0)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 x y))))
(*.f64 x (+.f64 y 1))
(*.f64 x (*.f64 (+.f64 y 1) (/.f64 x x)))
(*.f64 x (*.f64 (+.f64 y 1) (*.f64 x (/.f64 1 x))))
(*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 x y)))))
(*.f64 x (+.f64 y (/.f64 x x)))
(*.f64 x (+.f64 y (*.f64 x (/.f64 1 x))))
(*.f64 x (/.f64 (+.f64 y 1) (/.f64 x x)))
(*.f64 (+.f64 x (*.f64 x y)) 1)
(*.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))
(*.f64 (+.f64 x (*.f64 x y)) (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))))
(*.f64 (+.f64 x (*.f64 x y)) (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))))
(*.f64 1 (+.f64 x (*.f64 x y)))
(*.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y)))
(*.f64 (+.f64 y 1) x)
(*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 1 (+.f64 x (*.f64 x y))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))))
(*.f64 (/.f64 1 x) (*.f64 (+.f64 y 1) (*.f64 x x)))
(*.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 x (*.f64 x y))))
(*.f64 (*.f64 x x) (*.f64 (+.f64 y 1) (/.f64 1 x)))
(*.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (*.f64 (+.f64 x (*.f64 x y)) (*.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(/.f64 (+.f64 x (*.f64 x y)) 1)
(/.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))
(/.f64 (*.f64 x (-.f64 (+.f64 y y) -2)) 2)
(/.f64 (*.f64 (neg.f64 (+.f64 x (*.f64 x y))) 2) -2)
(pow.f64 (+.f64 x (*.f64 x y)) 1)
(neg.f64 (neg.f64 (+.f64 x (*.f64 x y))))
Outputs
y
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(+.f64 y (*.f64 (+.f64 1 y) x))
(+.f64 y (*.f64 x (+.f64 y 1)))
(+.f64 y (*.f64 x (-.f64 y -1)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1))
(*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y))))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
(+.f64 y (*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1)))
(+.f64 y (*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x)))
(+.f64 y (*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y)))))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
(+.f64 y (*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1)))
(+.f64 y (*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x)))
(+.f64 y (*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y)))))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x)))
(+.f64 y (*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1)))
(+.f64 y (*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x)))
(+.f64 y (*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y)))))
x
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(+.f64 (*.f64 (+.f64 1 x) y) x)
(+.f64 x (*.f64 y (+.f64 1 x)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 (+.f64 (*.f64 x -1) -1) (*.f64 y -1))
(*.f64 (neg.f64 y) (+.f64 -1 (neg.f64 x)))
(*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x))))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(+.f64 x (*.f64 (+.f64 (*.f64 x -1) -1) (*.f64 y -1)))
(+.f64 x (*.f64 (neg.f64 y) (+.f64 -1 (neg.f64 x))))
(+.f64 x (*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x)))))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(+.f64 x (*.f64 (+.f64 (*.f64 x -1) -1) (*.f64 y -1)))
(+.f64 x (*.f64 (neg.f64 y) (+.f64 -1 (neg.f64 x))))
(+.f64 x (*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x)))))
(+.f64 x (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y)))
(+.f64 x (*.f64 (+.f64 (*.f64 x -1) -1) (*.f64 y -1)))
(+.f64 x (*.f64 (neg.f64 y) (+.f64 -1 (neg.f64 x))))
(+.f64 x (*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x)))))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (+.f64 1 y) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1))
(*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1))
(*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1))
(*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 y) 1) x))
(*.f64 (+.f64 (*.f64 y -1) -1) (*.f64 x -1))
(*.f64 (+.f64 -1 (neg.f64 y)) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 -1 (neg.f64 y))))
x
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 y x))
(-.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 0)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(-.f64 0 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y)))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y)))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y)))) (+.f64 (*.f64 x y) (+.f64 x y))) (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (/.f64 (+.f64 (*.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(/.f64 (*.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 2) 2)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(/.f64 (*.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))) 2) -2)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(pow.f64 (+.f64 (*.f64 x y) (+.f64 x y)) 1)
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(neg.f64 (neg.f64 (+.f64 (*.f64 x y) (+.f64 x y))))
(+.f64 (*.f64 y x) (+.f64 y x))
(+.f64 x (+.f64 y (*.f64 y x)))
(-.f64 (+.f64 x (*.f64 x y)) 0)
(+.f64 x (*.f64 y x))
(-.f64 0 (neg.f64 (+.f64 x (*.f64 x y))))
(+.f64 x (*.f64 y x))
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 x (*.f64 (+.f64 y 1) (/.f64 x x)))
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 x (*.f64 (+.f64 y 1) (*.f64 x (/.f64 1 x))))
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 x y)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 x (+.f64 y (/.f64 x x)))
(*.f64 x (+.f64 y (*.f64 x (/.f64 1 x))))
(*.f64 x (/.f64 (+.f64 y 1) (/.f64 x x)))
(*.f64 x (/.f64 (-.f64 y -1) (/.f64 x x)))
(*.f64 (+.f64 x (*.f64 x y)) 1)
(+.f64 x (*.f64 y x))
(*.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))
(+.f64 x (*.f64 y x))
(*.f64 (+.f64 x (*.f64 x y)) (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (+.f64 x (*.f64 x y)) (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))))
(+.f64 x (*.f64 y x))
(*.f64 1 (+.f64 x (*.f64 x y)))
(+.f64 x (*.f64 y x))
(*.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y)))
(+.f64 x (*.f64 y x))
(*.f64 (+.f64 y 1) x)
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 1 (+.f64 x (*.f64 x y))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (/.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 x (+.f64 y 1))) (+.f64 x (*.f64 y x))))
(*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))))
(*.f64 x (*.f64 (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))))
(*.f64 (/.f64 1 x) (*.f64 (+.f64 y 1) (*.f64 x x)))
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 x (*.f64 x y))))
(*.f64 (/.f64 1 x) (*.f64 x (+.f64 x (*.f64 y x))))
(*.f64 x (*.f64 (/.f64 1 x) (+.f64 x (*.f64 y x))))
(*.f64 x (/.f64 (+.f64 x (*.f64 y x)) x))
(*.f64 (*.f64 x x) (*.f64 (+.f64 y 1) (/.f64 1 x)))
(*.f64 x (+.f64 y 1))
(*.f64 x (-.f64 y -1))
(*.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y)))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y)))
(+.f64 x (*.f64 y x))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (*.f64 (+.f64 x (*.f64 x y)) (*.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))))
(+.f64 x (*.f64 y x))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 x (+.f64 y 1))) (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))
(*.f64 (*.f64 x (*.f64 (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))))) (/.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(*.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (/.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 x (+.f64 y 1))) (+.f64 x (*.f64 y x))))
(*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))))
(*.f64 x (*.f64 (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))))
(*.f64 (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (/.f64 (/.f64 (*.f64 x (*.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (+.f64 y 1))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))))
(*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 x (+.f64 y 1))) (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))
(*.f64 (*.f64 x (*.f64 (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))))) (/.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1))) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1)))) (*.f64 x (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))))
(*.f64 x (*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y x))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (+.f64 y 1)))))
(*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x))))) (/.f64 (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1))) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (+.f64 y 1)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x))))) (/.f64 (-.f64 y -1) (*.f64 (+.f64 x (*.f64 y x)) (*.f64 x (-.f64 y -1)))))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (*.f64 (*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x)))) (/.f64 (+.f64 y 1) (*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y)))) (+.f64 x (*.f64 x y))) (*.f64 x (*.f64 (+.f64 x (*.f64 x y)) (+.f64 y 1))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (+.f64 y 1) (+.f64 x (*.f64 y x)))))
(*.f64 x (*.f64 (+.f64 x (*.f64 y x)) (/.f64 (-.f64 y -1) (+.f64 x (*.f64 y x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y x)) (+.f64 y 1)) (/.f64 x (+.f64 x (*.f64 y x))))
(/.f64 (+.f64 x (*.f64 x y)) 1)
(+.f64 x (*.f64 y x))
(/.f64 (+.f64 x (*.f64 x y)) (/.f64 (+.f64 x (*.f64 x y)) (+.f64 x (*.f64 x y))))
(+.f64 x (*.f64 y x))
(/.f64 (*.f64 x (-.f64 (+.f64 y y) -2)) 2)
(/.f64 (*.f64 (neg.f64 (+.f64 x (*.f64 x y))) 2) -2)
(+.f64 x (*.f64 y x))
(pow.f64 (+.f64 x (*.f64 x y)) 1)
(+.f64 x (*.f64 y x))
(neg.f64 (neg.f64 (+.f64 x (*.f64 x y))))
(+.f64 x (*.f64 y x))

eval26.0ms (0.6%)

Compiler

Compiled 3174 to 863 computations (72.8% saved)

prune99.0ms (2.1%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1215126
Fresh000
Picked011
Done000
Total1216127
Error
0b
Counts
127 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 (*.f64 x y) x) y)
28.5b
(+.f64 (*.f64 y x) y)
25.7b
(*.f64 (+.f64 1 y) x)
28.5b
(*.f64 (+.f64 1 x) y)
37.9b
y
34.6b
x
Compiler

Compiled 36 to 23 computations (36.1% saved)

localize7.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 13 to 8 computations (38.5% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite75.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1660×rational_best.json-5
1658×rational_best.json-2
1658×rational_best.json-3
1658×rational_best.json-1
1658×exponential.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15713
218413
377313
4334913
Stop Event
node limit
Counts
1 → 7
Calls
Call 1
Inputs
(*.f64 (+.f64 1 x) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 1 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 1 x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 x) y) (/.f64 (*.f64 (+.f64 1 x) y) (*.f64 (+.f64 1 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 x) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 1 x) y) 1)))))

simplify175.0ms (3.8%)

Algorithm
egg-herbie
Rules
1882×rational_best.json-simplify-82
1754×rational_best.json-simplify-80
1354×rational_best.json-simplify-78
1076×rational_best.json-simplify-44
1040×rational_best.json-simplify-132
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022223
133223
269223
3190223
4809223
52553223
64374223
76489223
Stop Event
node limit
Counts
19 → 12
Calls
Call 1
Inputs
y
(+.f64 (*.f64 y x) y)
(+.f64 (*.f64 y x) y)
(+.f64 (*.f64 y x) y)
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 (*.f64 (+.f64 1 x) y) 0)
(+.f64 0 (*.f64 (+.f64 1 x) y))
(-.f64 (*.f64 (+.f64 1 x) y) 0)
(/.f64 (*.f64 (+.f64 1 x) y) 1)
(/.f64 (*.f64 (+.f64 1 x) y) (/.f64 (*.f64 (+.f64 1 x) y) (*.f64 (+.f64 1 x) y)))
(/.f64 (*.f64 (+.f64 1 x) (+.f64 y y)) 2)
(pow.f64 (*.f64 (+.f64 1 x) y) 1)
Outputs
y
(+.f64 (*.f64 y x) y)
(+.f64 y (*.f64 y x))
(+.f64 (*.f64 y x) y)
(+.f64 y (*.f64 y x))
(+.f64 (*.f64 y x) y)
(+.f64 y (*.f64 y x))
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 (*.f64 (+.f64 1 x) y) 0)
(*.f64 y (+.f64 x 1))
(+.f64 0 (*.f64 (+.f64 1 x) y))
(*.f64 y (+.f64 x 1))
(-.f64 (*.f64 (+.f64 1 x) y) 0)
(*.f64 y (+.f64 x 1))
(/.f64 (*.f64 (+.f64 1 x) y) 1)
(*.f64 y (+.f64 x 1))
(/.f64 (*.f64 (+.f64 1 x) y) (/.f64 (*.f64 (+.f64 1 x) y) (*.f64 (+.f64 1 x) y)))
(*.f64 y (+.f64 x 1))
(/.f64 (*.f64 (+.f64 1 x) (+.f64 y y)) 2)
(*.f64 y (+.f64 x 1))
(pow.f64 (*.f64 (+.f64 1 x) y) 1)
(*.f64 y (+.f64 x 1))

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 13 to 8 computations (38.5% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite72.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1660×rational_best.json-5
1658×rational_best.json-2
1658×rational_best.json-3
1658×rational_best.json-1
1658×exponential.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15713
218413
377313
4334913
Stop Event
node limit
Counts
1 → 7
Calls
Call 1
Inputs
(*.f64 (+.f64 1 y) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 1 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 1 y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 y) x) (/.f64 (*.f64 (+.f64 1 y) x) (*.f64 (+.f64 1 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 y) (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 1 y) x) 1)))))

simplify165.0ms (3.6%)

Algorithm
egg-herbie
Rules
1882×rational_best.json-simplify-82
1754×rational_best.json-simplify-80
1354×rational_best.json-simplify-78
1076×rational_best.json-simplify-44
1040×rational_best.json-simplify-132
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021223
133223
269223
3190223
4809223
52555223
64374223
76487223
Stop Event
node limit
Counts
19 → 13
Calls
Call 1
Inputs
x
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(*.f64 y x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 y) x) 0)
(+.f64 0 (*.f64 (+.f64 1 y) x))
(-.f64 (*.f64 (+.f64 1 y) x) 0)
(/.f64 (*.f64 (+.f64 1 y) x) 1)
(/.f64 (*.f64 (+.f64 1 y) x) (/.f64 (*.f64 (+.f64 1 y) x) (*.f64 (+.f64 1 y) x)))
(/.f64 (*.f64 (+.f64 1 y) (+.f64 x x)) 2)
(pow.f64 (*.f64 (+.f64 1 y) x) 1)
Outputs
x
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 y x) x)
(+.f64 x (*.f64 x y))
(+.f64 (*.f64 (+.f64 1 y) x) 0)
(*.f64 x (+.f64 y 1))
(+.f64 0 (*.f64 (+.f64 1 y) x))
(*.f64 x (+.f64 y 1))
(-.f64 (*.f64 (+.f64 1 y) x) 0)
(*.f64 x (+.f64 y 1))
(/.f64 (*.f64 (+.f64 1 y) x) 1)
(*.f64 x (+.f64 y 1))
(/.f64 (*.f64 (+.f64 1 y) x) (/.f64 (*.f64 (+.f64 1 y) x) (*.f64 (+.f64 1 y) x)))
(*.f64 x (+.f64 y 1))
(/.f64 (*.f64 (+.f64 1 y) (+.f64 x x)) 2)
(*.f64 x (+.f64 y 1))
(pow.f64 (*.f64 (+.f64 1 y) x) 1)
(*.f64 x (+.f64 y 1))

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 12 to 4 computations (66.7% saved)

series1.0ms (0%)

Counts
1 → 21
Calls

6 calls:

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

rewrite76.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1736×rational_best.json-5
1734×rational_best.json-2
1734×rational_best.json-3
1734×rational_best.json-1
1734×exponential.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
15213
218613
379113
4346213
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 x 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (+.f64 x 1) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (+.f64 x 1) (*.f64 y (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 x (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 x (*.f64 y (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 (/.f64 y y) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 (*.f64 y (/.f64 1 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 y x)) (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (/.f64 1 (+.f64 y (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (*.f64 (+.f64 x 1) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (+.f64 (*.f64 x (*.f64 y y)) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (+.f64 (*.f64 y y) (*.f64 x (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (+.f64 x 1) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))) (*.f64 (+.f64 y (*.f64 y x)) (*.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))) (*.f64 y (*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (+.f64 x 1) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 y (*.f64 y x)) 1)))))

simplify293.0ms (6.3%)

Algorithm
egg-herbie
Rules
1054×rational_best.json-simplify-132
1048×rational_best.json-simplify-2
906×rational_best.json-simplify-49
856×rational_best.json-simplify-50
634×rational_best.json-simplify-80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0801240
11631164
23621164
311261152
427591152
562291152
Stop Event
node limit
Counts
52 → 64
Calls
Call 1
Inputs
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 (+.f64 1 x) y)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
y
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(*.f64 y x)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 y x))
(-.f64 (+.f64 y (*.f64 y x)) 0)
(*.f64 y (+.f64 x 1))
(*.f64 y (*.f64 (+.f64 x 1) (/.f64 y y)))
(*.f64 y (*.f64 (+.f64 x 1) (*.f64 y (/.f64 1 y))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 y (+.f64 x (/.f64 y y)))
(*.f64 y (+.f64 x (*.f64 y (/.f64 1 y))))
(*.f64 y (+.f64 (/.f64 y y) x))
(*.f64 y (+.f64 (*.f64 y (/.f64 1 y)) x))
(*.f64 (+.f64 y (*.f64 y x)) 1)
(*.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))
(*.f64 (+.f64 y (*.f64 y x)) (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))))
(*.f64 (+.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))))
(*.f64 1 (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x)))
(*.f64 (+.f64 x 1) y)
(*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (/.f64 1 (+.f64 y (*.f64 y x))))
(*.f64 (/.f64 1 y) (*.f64 (+.f64 x 1) (*.f64 y y)))
(*.f64 (/.f64 1 y) (+.f64 (*.f64 x (*.f64 y y)) (*.f64 y y)))
(*.f64 (/.f64 1 y) (+.f64 (*.f64 y y) (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y y) (*.f64 (+.f64 x 1) (/.f64 1 y)))
(*.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x)))
(*.f64 (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))) (*.f64 (+.f64 y (*.f64 y x)) (*.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))) (*.f64 y (*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))))
(*.f64 (/.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 (/.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(/.f64 (+.f64 y (*.f64 y x)) 1)
(/.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))
(/.f64 (*.f64 y (*.f64 (+.f64 x 1) 2)) 2)
(pow.f64 (+.f64 y (*.f64 y x)) 1)
Outputs
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 (+.f64 1 x) y)
(*.f64 y (+.f64 1 x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 x -1) -1)))
(neg.f64 (*.f64 y (+.f64 -1 (neg.f64 x))))
(*.f64 (+.f64 -1 (neg.f64 x)) (neg.f64 y))
(*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 x -1) -1)))
(neg.f64 (*.f64 y (+.f64 -1 (neg.f64 x))))
(*.f64 (+.f64 -1 (neg.f64 x)) (neg.f64 y))
(*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 x -1) -1)))
(neg.f64 (*.f64 y (+.f64 -1 (neg.f64 x))))
(*.f64 (+.f64 -1 (neg.f64 x)) (neg.f64 y))
(*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) 1) y))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 x -1) -1)))
(neg.f64 (*.f64 y (+.f64 -1 (neg.f64 x))))
(*.f64 (+.f64 -1 (neg.f64 x)) (neg.f64 y))
(*.f64 y (neg.f64 (+.f64 -1 (neg.f64 x))))
y
(*.f64 y x)
(*.f64 x y)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(+.f64 y (*.f64 y x))
(+.f64 y (*.f64 x y))
(-.f64 (+.f64 y (*.f64 y x)) 0)
(+.f64 y (*.f64 x y))
(*.f64 y (+.f64 x 1))
(*.f64 y (+.f64 1 x))
(*.f64 y (*.f64 (+.f64 x 1) (/.f64 y y)))
(*.f64 y (+.f64 1 x))
(*.f64 y (*.f64 (+.f64 x 1) (*.f64 y (/.f64 1 y))))
(*.f64 y (+.f64 1 x))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 y (+.f64 x (/.f64 y y)))
(*.f64 y (+.f64 x (*.f64 y (/.f64 1 y))))
(*.f64 y (+.f64 (/.f64 y y) x))
(*.f64 y (+.f64 x (/.f64 y y)))
(*.f64 y (+.f64 (*.f64 y (/.f64 1 y)) x))
(*.f64 y (+.f64 x (*.f64 y (/.f64 1 y))))
(*.f64 (+.f64 y (*.f64 y x)) 1)
(+.f64 y (*.f64 x y))
(*.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))
(+.f64 y (*.f64 x y))
(*.f64 (+.f64 y (*.f64 y x)) (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))))
(+.f64 y (*.f64 x y))
(*.f64 1 (+.f64 y (*.f64 y x)))
(+.f64 y (*.f64 x y))
(*.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x)))
(+.f64 y (*.f64 x y))
(*.f64 (+.f64 x 1) y)
(*.f64 y (+.f64 1 x))
(*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (/.f64 1 (+.f64 y (*.f64 y x))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 (/.f64 1 y) (*.f64 (+.f64 x 1) (*.f64 y y)))
(*.f64 y (+.f64 1 x))
(*.f64 (/.f64 1 y) (+.f64 (*.f64 x (*.f64 y y)) (*.f64 y y)))
(*.f64 (/.f64 1 y) (+.f64 (*.f64 y y) (*.f64 x (*.f64 y y))))
(*.f64 (/.f64 1 y) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 y (*.f64 (/.f64 1 y) (+.f64 y (*.f64 x y))))
(*.f64 y (/.f64 (+.f64 y (*.f64 x y)) y))
(*.f64 (/.f64 1 y) (+.f64 (*.f64 y y) (*.f64 x (*.f64 y y))))
(*.f64 (/.f64 1 y) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 y (*.f64 (/.f64 1 y) (+.f64 y (*.f64 x y))))
(*.f64 y (/.f64 (+.f64 y (*.f64 x y)) y))
(*.f64 (*.f64 y y) (*.f64 (+.f64 x 1) (/.f64 1 y)))
(*.f64 y (+.f64 1 x))
(*.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x)))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 (/.f64 1 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x)))) (*.f64 (+.f64 y (*.f64 y x)) (*.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))))
(+.f64 y (*.f64 x y))
(*.f64 (/.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))) (*.f64 y (*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))) (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x)))) (*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))) (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x)))))
(*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))) (/.f64 (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x))) (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x)))))
(*.f64 (*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y)))) (/.f64 (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x))) (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x)))))
(*.f64 (+.f64 y (*.f64 x y)) (*.f64 (*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))) (/.f64 (*.f64 y (+.f64 1 x)) (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))))
(*.f64 y (*.f64 (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))) (/.f64 (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x))) (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x))))))
(*.f64 (/.f64 (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 x y))) (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))))
(*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y))))
(*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))
(*.f64 (+.f64 y (*.f64 x y)) (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))))
(*.f64 (/.f64 (*.f64 y (*.f64 (/.f64 1 (+.f64 y (*.f64 y x))) (+.f64 x 1))) (+.f64 y (*.f64 y x))) (*.f64 y (*.f64 (+.f64 y (*.f64 y x)) (+.f64 x 1))))
(*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (+.f64 1 x))) (/.f64 (*.f64 y (*.f64 (+.f64 1 x) (/.f64 1 (+.f64 y (*.f64 x y))))) (+.f64 y (*.f64 x y))))
(*.f64 y (*.f64 (*.f64 y (*.f64 (+.f64 y (*.f64 x y)) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (*.f64 (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y))) (*.f64 y (+.f64 y (*.f64 x y)))) (*.f64 y (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))))
(*.f64 (+.f64 1 x) (*.f64 (*.f64 (*.f64 y (+.f64 y (*.f64 x y))) (/.f64 (+.f64 1 x) (+.f64 y (*.f64 x y)))) (/.f64 y (+.f64 y (*.f64 x y)))))
(*.f64 (*.f64 (+.f64 y (*.f64 x y)) (*.f64 y (+.f64 1 x))) (/.f64 (/.f64 (*.f64 y (+.f64 1 x)) (+.f64 y (*.f64 x y))) (+.f64 y (*.f64 x y))))
(/.f64 (+.f64 y (*.f64 y x)) 1)
(+.f64 y (*.f64 x y))
(/.f64 (+.f64 y (*.f64 y x)) (/.f64 (+.f64 y (*.f64 y x)) (+.f64 y (*.f64 y x))))
(+.f64 y (*.f64 x y))
(/.f64 (*.f64 y (*.f64 (+.f64 x 1) 2)) 2)
(/.f64 (*.f64 y (*.f64 (+.f64 1 x) 2)) 2)
(/.f64 (*.f64 (+.f64 1 x) (*.f64 y 2)) 2)
(/.f64 (*.f64 y (-.f64 (+.f64 x x) -2)) 2)
(pow.f64 (+.f64 y (*.f64 y x)) 1)
(+.f64 y (*.f64 x y))

eval16.0ms (0.3%)

Compiler

Compiled 1195 to 464 computations (61.2% saved)

prune14.0ms (0.3%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New88189
Fresh022
Picked011
Done033
Total88795
Error
0b
Counts
95 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 (*.f64 x y) x) y)
28.5b
(+.f64 (*.f64 y x) y)
25.7b
(*.f64 (+.f64 1 y) x)
28.5b
(*.f64 (+.f64 1 x) y)
53.5b
(*.f64 y x)
37.9b
y
34.6b
x
Compiler

Compiled 41 to 26 computations (36.6% saved)

localize3.0ms (0.1%)

Compiler

Compiled 7 to 3 computations (57.1% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune2.0ms (0.1%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New000
Fresh022
Picked011
Done044
Total077
Error
0b
Counts
7 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 (*.f64 x y) x) y)
28.5b
(+.f64 (*.f64 y x) y)
25.7b
(*.f64 (+.f64 1 y) x)
28.5b
(*.f64 (+.f64 1 x) y)
53.5b
(*.f64 y x)
37.9b
y
34.6b
x
Compiler

Compiled 41 to 26 computations (36.6% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune3.0ms (0.1%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New000
Fresh022
Picked000
Done055
Total077
Error
0b
Counts
7 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 (*.f64 x y) x) y)
28.5b
(+.f64 (*.f64 y x) y)
25.7b
(*.f64 (+.f64 1 y) x)
28.5b
(*.f64 (+.f64 1 x) y)
53.5b
(*.f64 y x)
37.9b
y
34.6b
x
Compiler

Compiled 41 to 26 computations (36.6% saved)

regimes20.0ms (0.4%)

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

3 calls:

8.0ms
y
5.0ms
x
5.0ms
(+.f64 (+.f64 (*.f64 x y) x) y)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(+.f64 (+.f64 (*.f64 x y) x) y)
Compiler

Compiled 44 to 22 computations (50% saved)

regimes24.0ms (0.5%)

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

2 calls:

13.0ms
x
9.0ms
y
Results
ErrorSegmentsBranch
6.1b2x
5.3b2y
Compiler

Compiled 28 to 14 computations (50% saved)

bsearch11.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
11.0ms
3.809239392250462e-58
8.729037204666132e-57
Results
9.0ms112×body256valid
Compiler

Compiled 126 to 93 computations (26.2% saved)

regimes110.0ms (2.4%)

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

2 calls:

98.0ms
x
10.0ms
y
Results
ErrorSegmentsBranch
11.8b4x
5.7b3y
Compiler

Compiled 18 to 10 computations (44.4% saved)

bsearch135.0ms (2.9%)

Algorithm
binary-search
Steps
TimeLeftRight
121.0ms
3.809239392250462e-58
8.729037204666132e-57
13.0ms
-16110.28517262848
-0.0031724154360110255
Results
132.0ms256×body256valid
Compiler

Compiled 188 to 135 computations (28.2% saved)

regimes36.0ms (0.8%)

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

2 calls:

20.0ms
y
15.0ms
x
Results
ErrorSegmentsBranch
12.3b5x
11.1b5y
Compiler

Compiled 13 to 7 computations (46.2% saved)

bsearch112.0ms (2.4%)

Algorithm
binary-search
Steps
TimeLeftRight
16.0ms
1.7389586383998996e+49
5.931762935470436e+59
11.0ms
1.9590675515836604e+29
1.0052809080972873e+30
73.0ms
2.2384176621949933e-53
2.348307374840666e-51
13.0ms
-16110.28517262848
-0.0031724154360110255
Results
106.0ms512×body256valid
1.0ms14×body256infinite
Compiler

Compiled 320 to 226 computations (29.4% saved)

regimes127.0ms (2.7%)

Accuracy

Total -47.2b remaining (-314.9%)

Threshold costs -47.2b (-314.9%)

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

2 calls:

117.0ms
y
9.0ms
x
Results
ErrorSegmentsBranch
15.2b2x
15.0b2y
Compiler

Compiled 10 to 6 computations (40% saved)

bsearch11.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
11.0ms
2.2384176621949933e-53
2.348307374840666e-51
Results
9.0ms112×body256valid
Compiler

Compiled 70 to 51 computations (27.1% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038158
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(if (<=.f64 y 7509100025308133/883423532389192164791648750371459257913741948437809479060803100646309888) (*.f64 (+.f64 1 y) x) (*.f64 (+.f64 1 x) y))
(if (<=.f64 y -1) (*.f64 y x) (if (<=.f64 y 795081179150273/220855883097298041197912187592864814478435487109452369765200775161577472) x (*.f64 (+.f64 1 x) y)))
(if (<=.f64 y -1) (*.f64 y x) (if (<=.f64 y 1684996666696915/1684996666696914987166688442938726917102321526408785780068975640576) x (if (<=.f64 y 539999999999999999478698344448) y (if (<=.f64 y 740000000000000014921921955801342796138770151243776) (*.f64 y x) y))))
(if (<=.f64 y 2358995333375681/3369993333393829974333376885877453834204643052817571560137951281152) x y)
x
Outputs
(+.f64 (+.f64 (*.f64 x y) x) y)
(if (<=.f64 y 7509100025308133/883423532389192164791648750371459257913741948437809479060803100646309888) (*.f64 (+.f64 1 y) x) (*.f64 (+.f64 1 x) y))
(if (<=.f64 y -1) (*.f64 y x) (if (<=.f64 y 795081179150273/220855883097298041197912187592864814478435487109452369765200775161577472) x (*.f64 (+.f64 1 x) y)))
(if (<=.f64 y -1) (*.f64 y x) (if (<=.f64 y 1684996666696915/1684996666696914987166688442938726917102321526408785780068975640576) x (if (<=.f64 y 539999999999999999478698344448) y (if (<=.f64 y 740000000000000014921921955801342796138770151243776) (*.f64 y x) y))))
(if (<=.f64 y 2358995333375681/3369993333393829974333376885877453834204643052817571560137951281152) x y)
x
Compiler

Compiled 82 to 50 computations (39% saved)

soundness0.0ms (0%)

end123.0ms (2.7%)

Remove

(sort x y)

Compiler

Compiled 90 to 49 computations (45.6% saved)

Profiling

Loading profile data...