Details

Time bar (total: 9.9s)

analyze249.0ms (2.5%)

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
12.5%12.5%87.4%0.1%0%0%0%5
18.8%18.7%81.2%0.1%0%0%0%6
46.9%46.8%53.1%0.1%0%0%0%7
54.7%54.6%45.3%0.1%0%0%0%8
71.1%71%28.9%0.1%0%0%0%9
76.2%76.1%23.8%0.1%0%0%0%10
85%84.9%15%0.1%0%0%0%11
87.8%87.7%12.2%0.1%0%0%0%12
Compiler

Compiled 10 to 7 computations (30% saved)

sample3.4s (34.5%)

Results
3.4s8253×body256valid
0.0msbody1024valid
0.0msbody512valid
Bogosity

preprocess30.0ms (0.3%)

Algorithm
egg-herbie
Rules
rational_best.json-simplify-1
rational_best.json-simplify-16
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01138
11738
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(/.f64 (+.f64 y x) (+.f64 x 1))
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(/.f64 (+.f64 y x) (+.f64 x 1))
(/.f64 (+.f64 x y) (+.f64 x 1))
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify21.0ms (0.2%)

Algorithm
egg-herbie
Rules
rational_best.json-simplify-1
rational_best.json-simplify-16
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11219
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))

eval1.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 9 to 6 computations (33.3% saved)

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 18 to 9 computations (50% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite149.0ms (1.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
16719
221919
388919
4378119
Stop Event
node limit
Counts
1 → 17
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (+.f64 x y) (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)))))

simplify252.0ms (2.6%)

Algorithm
egg-herbie
Rules
1098×rational_best.json-simplify-80
992×rational_best.json-simplify-78
948×rational_best.json-simplify-2
924×rational_best.json-simplify-94
738×rational_best.json-simplify-132
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0861157
11751129
23371127
310871125
423201125
545731125
Stop Event
node limit
Counts
41 → 61
Calls
Call 1
Inputs
(/.f64 y (+.f64 1 y))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(/.f64 x (+.f64 1 y))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(/.f64 x (+.f64 1 y))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
x
(+.f64 (*.f64 y (-.f64 1 x)) x)
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 3) (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x)))
1
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (/.f64 x y))) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))
(-.f64 (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (/.f64 x y)))) (+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 1 (pow.f64 y 3)))))
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) (pow.f64 y 3))) (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y))))))
(+.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(+.f64 0 (/.f64 (+.f64 x y) (+.f64 y 1)))
(-.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(*.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(*.f64 (/.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(pow.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
Outputs
(/.f64 y (+.f64 1 y))
(/.f64 y (+.f64 y 1))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 y 1))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 y 1))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
(+.f64 (/.f64 y (+.f64 1 y)) (/.f64 x (+.f64 1 y)))
(+.f64 (/.f64 y (+.f64 y 1)) (/.f64 x (+.f64 y 1)))
x
(+.f64 (*.f64 y (-.f64 1 x)) x)
(+.f64 x (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 3) (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (-.f64 1 x) (pow.f64 y 3))))
(+.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (-.f64 1 x) (+.f64 y (pow.f64 y 3))))
(+.f64 x (+.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (*.f64 (-.f64 1 x) (+.f64 y (pow.f64 y 3)))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (+.f64 x (*.f64 (-.f64 1 x) (+.f64 y (pow.f64 y 3)))))
1
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (/.f64 x y))) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))
(-.f64 (+.f64 (/.f64 x y) (+.f64 1 (/.f64 1 (pow.f64 y 2)))) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))
(-.f64 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (pow.f64 y 2))) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))
(-.f64 (+.f64 1 (+.f64 (/.f64 x y) (/.f64 1 (pow.f64 y 2)))) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))
(-.f64 (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (/.f64 x y)))) (+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 1 (pow.f64 y 3)))))
(-.f64 (+.f64 (+.f64 1 (/.f64 x y)) (+.f64 (/.f64 1 (pow.f64 y 2)) (/.f64 x (pow.f64 y 3)))) (+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 1 (pow.f64 y 3)))))
(-.f64 (+.f64 (+.f64 1 (/.f64 x y)) (+.f64 (/.f64 1 (pow.f64 y 2)) (/.f64 x (pow.f64 y 3)))) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 1 (pow.f64 y 3)) (/.f64 1 y))))
(-.f64 (+.f64 (+.f64 (/.f64 x y) (+.f64 1 (/.f64 1 (pow.f64 y 2)))) (/.f64 x (pow.f64 y 3))) (+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 1 (pow.f64 y 3)))))
(-.f64 (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 1 (/.f64 1 (pow.f64 y 2))))) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3)))))
(-.f64 (+.f64 1 (+.f64 (/.f64 x y) (+.f64 (/.f64 1 (pow.f64 y 2)) (/.f64 x (pow.f64 y 3))))) (+.f64 (/.f64 1 y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 1 (pow.f64 y 3)))))
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)))
(+.f64 1 (neg.f64 (/.f64 (+.f64 1 (neg.f64 x)) y)))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (*.f64 -1 (+.f64 (/.f64 (+.f64 1 (*.f64 x -1)) y) (/.f64 x (pow.f64 y 2))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y))) (+.f64 1 (/.f64 1 (pow.f64 y 2))))
(+.f64 1 (+.f64 (/.f64 1 (pow.f64 y 2)) (neg.f64 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y)))))
(+.f64 (neg.f64 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y))) (+.f64 1 (/.f64 1 (pow.f64 y 2))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) (pow.f64 y 3))) (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y))))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 (/.f64 x (pow.f64 y 2)) -1) (*.f64 -1 (+.f64 (/.f64 (+.f64 1 (*.f64 x -1)) y) (/.f64 (+.f64 1 (*.f64 x -1)) (pow.f64 y 3)))))))
(+.f64 (*.f64 -1 (+.f64 (+.f64 (/.f64 (+.f64 1 (neg.f64 x)) y) (/.f64 (+.f64 1 (neg.f64 x)) (pow.f64 y 3))) (/.f64 x (pow.f64 y 2)))) (+.f64 1 (/.f64 1 (pow.f64 y 2))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (*.f64 -1 (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (+.f64 1 (neg.f64 x)) y) (/.f64 (+.f64 1 (neg.f64 x)) (pow.f64 y 3)))))))
(+.f64 (neg.f64 (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 (+.f64 1 (neg.f64 x)) y) (/.f64 (+.f64 1 (neg.f64 x)) (pow.f64 y 3))))) (+.f64 1 (/.f64 1 (pow.f64 y 2))))
(+.f64 1 (+.f64 (/.f64 1 (pow.f64 y 2)) (neg.f64 (+.f64 (/.f64 (+.f64 1 (neg.f64 x)) (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y))))))
(+.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(/.f64 (+.f64 y x) (+.f64 y 1))
(+.f64 0 (/.f64 (+.f64 x y) (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(-.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 1 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(*.f64 (/.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))) (/.f64 (+.f64 x y) (+.f64 y 1))) (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) (/.f64 (+.f64 x y) (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(pow.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(/.f64 (+.f64 y x) (+.f64 y 1))

eval33.0ms (0.3%)

Compiler

Compiled 1262 to 811 computations (35.7% saved)

prune24.0ms (0.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New54761
Fresh000
Picked011
Done000
Total54862
Error
0.0b
Counts
62 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.3b
(/.f64 y (+.f64 y 1))
33.1b
(/.f64 x (+.f64 y 1))
30.7b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
33.9b
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
33.7b
(+.f64 (*.f64 y (-.f64 1 x)) x)
41.2b
x
38.3b
1
Compiler

Compiled 117 to 83 computations (29.1% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 y (+.f64 y 1))
Compiler

Compiled 12 to 8 computations (33.3% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite100.0ms (1%)

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

Useful iterations: 0 (0.0ms)

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

simplify362.0ms (3.7%)

Algorithm
egg-herbie
Rules
968×rational_best.json-simplify-2
642×rational_best.json-simplify-80
576×rational_best.json-simplify-49
566×rational_best.json-simplify-78
546×rational_best.json-simplify-50
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
079691
1163683
2373681
31406681
42864679
55664679
Stop Event
node limit
Counts
43 → 50
Calls
Call 1
Inputs
y
(+.f64 (*.f64 -1 (pow.f64 y 2)) y)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 y 3) y))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (+.f64 y (*.f64 -1 (pow.f64 y 4)))))
1
(-.f64 1 (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
1
(-.f64 1 (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
(+.f64 (/.f64 y (+.f64 y 1)) 0)
(+.f64 0 (/.f64 y (+.f64 y 1)))
(-.f64 (/.f64 y (+.f64 y 1)) 0)
(-.f64 0 (neg.f64 (/.f64 y (+.f64 y 1))))
(*.f64 1 (/.f64 y (+.f64 y 1)))
(*.f64 (/.f64 y (+.f64 y 1)) 1)
(*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(*.f64 (/.f64 y (+.f64 y 1)) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 1 (/.f64 y (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(*.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (/.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(pow.f64 (/.f64 y (+.f64 y 1)) 1)
(neg.f64 (neg.f64 (/.f64 y (+.f64 y 1))))
Outputs
y
(+.f64 (*.f64 -1 (pow.f64 y 2)) y)
(+.f64 y (*.f64 -1 (pow.f64 y 2)))
(+.f64 y (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 y 3) y))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (pow.f64 y 3)))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (pow.f64 y 3)))
(+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y (pow.f64 y 3)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (+.f64 y (*.f64 -1 (pow.f64 y 4)))))
(+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 (+.f64 y (pow.f64 y 3)) (neg.f64 (pow.f64 y 4))))
(+.f64 (+.f64 y (pow.f64 y 3)) (*.f64 -1 (+.f64 (pow.f64 y 2) (pow.f64 y 4))))
(+.f64 y (+.f64 (pow.f64 y 3) (neg.f64 (+.f64 (pow.f64 y 2) (pow.f64 y 4)))))
1
(-.f64 1 (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (/.f64 1 y))
(-.f64 (+.f64 1 (/.f64 1 (pow.f64 y 2))) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
(-.f64 (+.f64 1 (/.f64 1 (pow.f64 y 2))) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
1
(-.f64 1 (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (/.f64 1 y))
(-.f64 (+.f64 1 (/.f64 1 (pow.f64 y 2))) (/.f64 1 y))
(-.f64 (+.f64 (/.f64 1 (pow.f64 y 2)) 1) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
(-.f64 (+.f64 1 (/.f64 1 (pow.f64 y 2))) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))
(+.f64 (/.f64 y (+.f64 y 1)) 0)
(/.f64 y (+.f64 y 1))
(+.f64 0 (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(-.f64 (/.f64 y (+.f64 y 1)) 0)
(/.f64 y (+.f64 y 1))
(-.f64 0 (neg.f64 (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 1 (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (+.f64 y 1)) 1)
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (+.f64 y 1)) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 1 (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (/.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 1 (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))) (*.f64 (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1)))) (/.f64 y (+.f64 y 1))) (*.f64 (/.f64 y (+.f64 y 1)) (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))
(pow.f64 (/.f64 y (+.f64 y 1)) 1)
(/.f64 y (+.f64 y 1))
(neg.f64 (neg.f64 (/.f64 y (+.f64 y 1))))
(/.f64 y (+.f64 y 1))

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 13 to 8 computations (38.5% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite122.0ms (1.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15813
219113
377213
4325313
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(/.f64 x (+.f64 y 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (+.f64 y 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (+.f64 y 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 y 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 y 1)) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 1 (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (+.f64 y 1)) 1)))))

simplify294.0ms (3%)

Algorithm
egg-herbie
Rules
1098×rational_best.json-simplify-80
1038×rational_best.json-simplify-2
992×rational_best.json-simplify-78
924×rational_best.json-simplify-94
738×rational_best.json-simplify-132
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
067880
1124856
2274848
31047844
42271844
54509844
Stop Event
node limit
Counts
46 → 56
Calls
Call 1
Inputs
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.f64 1 y))
x
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) x)) (+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(/.f64 x y)
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y)))
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))))
(/.f64 x y)
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y)))
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))))
(+.f64 (/.f64 x (+.f64 y 1)) 0)
(+.f64 0 (/.f64 x (+.f64 y 1)))
(-.f64 (/.f64 x (+.f64 y 1)) 0)
(*.f64 1 (/.f64 x (+.f64 y 1)))
(*.f64 (/.f64 x (+.f64 y 1)) 1)
(*.f64 (/.f64 x (+.f64 y 1)) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))))
(*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 1 (/.f64 x (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))
(*.f64 (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(*.f64 (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(*.f64 (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(pow.f64 (/.f64 x (+.f64 y 1)) 1)
Outputs
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
x
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 x (*.f64 y (*.f64 -1 x)))
(+.f64 x (neg.f64 (*.f64 x y)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 x (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 -1 (*.f64 y x)) x))
(+.f64 x (+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 x (pow.f64 y 2))))
(+.f64 x (+.f64 (neg.f64 (*.f64 x y)) (*.f64 x (pow.f64 y 2))))
(+.f64 x (*.f64 x (+.f64 (pow.f64 y 2) (*.f64 y -1))))
(+.f64 x (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) x)) (+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 -1 (*.f64 y x)) x)))
(+.f64 (+.f64 x (*.f64 y (*.f64 -1 x))) (+.f64 (*.f64 x (pow.f64 y 2)) (*.f64 -1 (*.f64 x (pow.f64 y 3)))))
(+.f64 (*.f64 x (pow.f64 y 2)) (+.f64 (+.f64 x (neg.f64 (*.f64 x y))) (neg.f64 (*.f64 x (pow.f64 y 3)))))
(+.f64 (*.f64 y (neg.f64 x)) (+.f64 x (*.f64 x (+.f64 (*.f64 -1 (pow.f64 y 3)) (pow.f64 y 2)))))
(+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 x (*.f64 x (neg.f64 (pow.f64 y 3)))))
(+.f64 x (+.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 (pow.f64 y 3))))))
(/.f64 x y)
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))
(+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 x y) (neg.f64 (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y)))
(+.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2)))) (/.f64 x (pow.f64 y 3)))
(+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (/.f64 x y) (/.f64 x (pow.f64 y 3))))
(+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (/.f64 x (pow.f64 y 3))))
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))))
(+.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2)))) (+.f64 (/.f64 x (pow.f64 y 3)) (*.f64 -1 (/.f64 x (pow.f64 y 4)))))
(+.f64 (+.f64 (/.f64 x y) (neg.f64 (/.f64 x (pow.f64 y 2)))) (+.f64 (/.f64 x (pow.f64 y 3)) (neg.f64 (/.f64 x (pow.f64 y 4)))))
(+.f64 (/.f64 x y) (+.f64 (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (/.f64 x (pow.f64 y 3))) (neg.f64 (/.f64 x (pow.f64 y 4)))))
(+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x y) (/.f64 x (pow.f64 y 3)))))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (neg.f64 (/.f64 x (pow.f64 y 4))))))
(+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (/.f64 x (pow.f64 y 3)) (neg.f64 (/.f64 x (pow.f64 y 4))))))
(/.f64 x y)
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))
(+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 x y) (neg.f64 (/.f64 x (pow.f64 y 2))))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y)))
(+.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2)))) (/.f64 x (pow.f64 y 3)))
(+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (/.f64 x y) (/.f64 x (pow.f64 y 3))))
(+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (/.f64 x (pow.f64 y 3))))
(+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 y 2))) (/.f64 x y))))
(+.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x (pow.f64 y 2)))) (+.f64 (/.f64 x (pow.f64 y 3)) (*.f64 -1 (/.f64 x (pow.f64 y 4)))))
(+.f64 (+.f64 (/.f64 x y) (neg.f64 (/.f64 x (pow.f64 y 2)))) (+.f64 (/.f64 x (pow.f64 y 3)) (neg.f64 (/.f64 x (pow.f64 y 4)))))
(+.f64 (/.f64 x y) (+.f64 (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (/.f64 x (pow.f64 y 3))) (neg.f64 (/.f64 x (pow.f64 y 4)))))
(+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 4))) (+.f64 (/.f64 x y) (/.f64 x (pow.f64 y 3)))))
(+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (neg.f64 (/.f64 x (pow.f64 y 4))))))
(+.f64 (/.f64 x y) (+.f64 (neg.f64 (/.f64 x (pow.f64 y 2))) (+.f64 (/.f64 x (pow.f64 y 3)) (neg.f64 (/.f64 x (pow.f64 y 4))))))
(+.f64 (/.f64 x (+.f64 y 1)) 0)
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(+.f64 0 (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(-.f64 (/.f64 x (+.f64 y 1)) 0)
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 1 (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 x (+.f64 y 1)) 1)
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 x (+.f64 y 1)) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 1 (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (*.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))) (/.f64 1 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))) (*.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1)))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 (/.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(*.f64 (/.f64 (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 1 (/.f64 x (+.f64 y 1)))) (/.f64 x (+.f64 y 1))) (*.f64 (/.f64 x (+.f64 y 1)) (/.f64 x (+.f64 y 1))))
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))
(pow.f64 (/.f64 x (+.f64 y 1)) 1)
(/.f64 x (+.f64 1 y))
(/.f64 x (-.f64 y -1))

localize18.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 20 to 12 computations (40% saved)

series5.0ms (0.1%)

Counts
2 → 27
Calls

12 calls:

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

rewrite138.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1910×rational_best.json-5
1908×rational_best.json-2
1908×rational_best.json-3
1908×rational_best.json-1
1908×rational_best.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
16532
221232
389032
4386132
Stop Event
node limit
Counts
2 → 25
Calls
Call 1
Inputs
(+.f64 (*.f64 y (-.f64 1 x)) x)
(*.f64 y (-.f64 1 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 1 x)) (/.f64 (*.f64 y (-.f64 1 x)) (*.f64 y (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 2 (+.f64 x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 1 x)) 1)))))

simplify188.0ms (1.9%)

Algorithm
egg-herbie
Rules
1318×rational_best.json-simplify-80
1258×rational_best.json-simplify-129
1248×rational_best.json-simplify-78
1186×rational_best.json-simplify-94
1034×rational_best.json-simplify-135
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
063934
1121890
2573890
33363890
Stop Event
node limit
Counts
52 → 51
Calls
Call 1
Inputs
x
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
y
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
y
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(-.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 0)
(*.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x))))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(/.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 2) 2)
(pow.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(+.f64 (*.f64 y (-.f64 1 x)) 0)
(+.f64 0 (*.f64 y (-.f64 1 x)))
(-.f64 (*.f64 y (-.f64 1 x)) 0)
(/.f64 (*.f64 y (-.f64 1 x)) 1)
(/.f64 (*.f64 y (-.f64 1 x)) (/.f64 (*.f64 y (-.f64 1 x)) (*.f64 y (-.f64 1 x))))
(/.f64 (*.f64 y (-.f64 2 (+.f64 x x))) 2)
(pow.f64 (*.f64 y (-.f64 1 x)) 1)
Outputs
x
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
y
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (*.f64 y -1)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(+.f64 y (*.f64 (+.f64 1 (*.f64 -1 y)) x))
(+.f64 y (*.f64 x (+.f64 1 (*.f64 y -1))))
(+.f64 y (*.f64 x (+.f64 1 (neg.f64 y))))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 -1 (*.f64 x (+.f64 y -1)))
(neg.f64 (*.f64 x (+.f64 y -1)))
(*.f64 (+.f64 y -1) (neg.f64 x))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
(+.f64 y (*.f64 -1 (*.f64 x (+.f64 y -1))))
(+.f64 y (neg.f64 (*.f64 x (+.f64 y -1))))
(+.f64 y (*.f64 (+.f64 y -1) (neg.f64 x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
(+.f64 y (*.f64 -1 (*.f64 x (+.f64 y -1))))
(+.f64 y (neg.f64 (*.f64 x (+.f64 y -1))))
(+.f64 y (*.f64 (+.f64 y -1) (neg.f64 x)))
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y 1) x)))
(+.f64 y (*.f64 -1 (*.f64 x (+.f64 y -1))))
(+.f64 y (neg.f64 (*.f64 x (+.f64 y -1))))
(+.f64 y (*.f64 (+.f64 y -1) (neg.f64 x)))
y
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 x y))
(*.f64 x (neg.f64 y))
(neg.f64 (*.f64 x y))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 x y))
(*.f64 x (neg.f64 y))
(neg.f64 (*.f64 x y))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 x (neg.f64 y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(-.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 0)
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (*.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x))))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 1 (+.f64 x (*.f64 y (-.f64 1 x))))) (+.f64 x (*.f64 y (-.f64 1 x)))) (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(+.f64 x (*.f64 y (-.f64 1 x)))
(/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (/.f64 (+.f64 x (*.f64 y (-.f64 1 x))) (+.f64 x (*.f64 y (-.f64 1 x)))))
(+.f64 x (*.f64 y (-.f64 1 x)))
(/.f64 (*.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 2) 2)
(+.f64 x (*.f64 y (-.f64 1 x)))
(pow.f64 (+.f64 x (*.f64 y (-.f64 1 x))) 1)
(+.f64 x (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 y (-.f64 1 x)) 0)
(*.f64 y (-.f64 1 x))
(+.f64 0 (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(-.f64 (*.f64 y (-.f64 1 x)) 0)
(*.f64 y (-.f64 1 x))
(/.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 y (-.f64 1 x))
(/.f64 (*.f64 y (-.f64 1 x)) (/.f64 (*.f64 y (-.f64 1 x)) (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(/.f64 (*.f64 y (-.f64 2 (+.f64 x x))) 2)
(pow.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 y (-.f64 1 x))

localize19.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 25 to 13 computations (48% saved)

series4.0ms (0%)

Counts
2 → 15
Calls

12 calls:

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

rewrite202.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
876×rational_best.json-simplify-57
736×rational_best.json-simplify-80
688×rational_best.json-simplify-43
568×rational_best.json-simplify-49
528×rational_best.json-simplify-78
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0938
17238
223938
3101138
4437938
Stop Event
node limit
Counts
2 → 77
Calls
Call 1
Inputs
(+.f64 1 (/.f64 x y))
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 -1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x y)) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 1 (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -1 (/.f64 x y)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 -1 (/.f64 x y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x y) (+.f64 1 (neg.f64 (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 x y)) (neg.f64 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 x y)) (-.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (+.f64 1 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (/.f64 1 y)) (+.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) (-.f64 0 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 x y) (/.f64 1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (neg.f64 (/.f64 1 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (/.f64 1 y)) 2) (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))))))))

simplify486.0ms (4.9%)

Algorithm
egg-herbie
Rules
1218×rational_best.json-simplify-2
1010×rational_best.json-simplify-135
956×rational_best.json-simplify-80
890×rational_best.json-simplify-78
828×rational_best.json-simplify-24
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01471784
12951764
213491764
342701760
477281760
Stop Event
node limit
Counts
92 → 99
Calls
Call 1
Inputs
1
(/.f64 x y)
(/.f64 x y)
(/.f64 x y)
1
1
(-.f64 1 (/.f64 1 y))
(/.f64 x y)
(/.f64 x y)
(/.f64 (-.f64 x 1) y)
1
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(-.f64 (/.f64 x y) -1)
(-.f64 (+.f64 1 (/.f64 x y)) 0)
(-.f64 0 (-.f64 -1 (/.f64 x y)))
(*.f64 1 (+.f64 1 (/.f64 x y)))
(*.f64 (+.f64 1 (/.f64 x y)) 1)
(*.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(*.f64 (+.f64 1 (/.f64 x y)) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))))
(*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y)))
(*.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 1 (+.f64 1 (/.f64 x y))))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(*.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(/.f64 (+.f64 1 (/.f64 x y)) 1)
(/.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(/.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) 2)
(/.f64 (*.f64 (-.f64 -1 (/.f64 x y)) 2) -2)
(pow.f64 (+.f64 1 (/.f64 x y)) 1)
(neg.f64 (-.f64 -1 (/.f64 x y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (/.f64 x y) (+.f64 1 (neg.f64 (/.f64 1 y))))
(+.f64 (+.f64 1 (/.f64 x y)) (neg.f64 (/.f64 1 y)))
(+.f64 (+.f64 1 (/.f64 x y)) (-.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (+.f64 1 (/.f64 x y))))
(+.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 0)
(+.f64 0 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 (neg.f64 (/.f64 1 y)) (+.f64 1 (/.f64 x y)))
(+.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) (-.f64 0 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 (-.f64 (/.f64 x y) (/.f64 1 y)) 1)
(+.f64 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (neg.f64 (/.f64 1 y)) 2))
(+.f64 (*.f64 (neg.f64 (/.f64 1 y)) 2) (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(*.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(*.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(*.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)
(*.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(*.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(*.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(*.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(*.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(*.f64 (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(*.f64 (/.f64 -1 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(/.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)
(/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 2) 2)
(/.f64 (*.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) 2) -2)
(pow.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(neg.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))))
Outputs
1
(/.f64 x y)
(/.f64 x y)
(/.f64 x y)
1
1
(-.f64 1 (/.f64 1 y))
(/.f64 x y)
(/.f64 x y)
(/.f64 (-.f64 x 1) y)
(/.f64 (+.f64 x -1) y)
1
1
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)))
(+.f64 1 (neg.f64 (/.f64 (+.f64 1 (neg.f64 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)))
(+.f64 1 (neg.f64 (/.f64 (+.f64 1 (neg.f64 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 -1 x)) y)))
(+.f64 1 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)))
(+.f64 1 (neg.f64 (/.f64 (+.f64 1 (neg.f64 x)) y)))
(-.f64 (/.f64 x y) -1)
(+.f64 1 (/.f64 x y))
(-.f64 (+.f64 1 (/.f64 x y)) 0)
(+.f64 1 (/.f64 x y))
(-.f64 0 (-.f64 -1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(*.f64 1 (+.f64 1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(*.f64 (+.f64 1 (/.f64 x y)) 1)
(+.f64 1 (/.f64 x y))
(*.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (+.f64 1 (/.f64 x y)) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 1 (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))) (*.f64 (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (*.f64 (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))))
(+.f64 1 (/.f64 x y))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y)))) (+.f64 1 (/.f64 x y))) (*.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(/.f64 (+.f64 1 (/.f64 x y)) 1)
(+.f64 1 (/.f64 x y))
(/.f64 (+.f64 1 (/.f64 x y)) (/.f64 (+.f64 1 (/.f64 x y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (/.f64 x y))
(/.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) 2)
(/.f64 (+.f64 2 (*.f64 (/.f64 x y) 2)) 2)
(+.f64 1 (/.f64 (*.f64 (/.f64 x y) 2) 2))
(/.f64 (*.f64 (-.f64 -1 (/.f64 x y)) 2) -2)
(+.f64 1 (/.f64 x y))
(pow.f64 (+.f64 1 (/.f64 x y)) 1)
(+.f64 1 (/.f64 x y))
(neg.f64 (-.f64 -1 (/.f64 x y)))
(+.f64 1 (/.f64 x y))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (/.f64 x y) (+.f64 1 (neg.f64 (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (+.f64 1 (/.f64 x y)) (neg.f64 (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (+.f64 1 (/.f64 x y)) (-.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (+.f64 1 (/.f64 x y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 0)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 0 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (neg.f64 (/.f64 1 y)) (+.f64 1 (/.f64 x y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (+.f64 (*.f64 (/.f64 x y) 2) 2) (-.f64 0 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 (+.f64 2 (*.f64 (/.f64 x y) 2)) (neg.f64 (+.f64 (/.f64 1 y) (+.f64 1 (/.f64 x y)))))
(+.f64 2 (+.f64 (*.f64 (/.f64 x y) 2) (neg.f64 (+.f64 1 (+.f64 (/.f64 x y) (/.f64 1 y))))))
(+.f64 2 (+.f64 (*.f64 (/.f64 x y) 2) (neg.f64 (+.f64 (/.f64 x y) (+.f64 1 (/.f64 1 y))))))
(+.f64 2 (+.f64 (*.f64 (/.f64 x y) 2) (-.f64 (-.f64 -1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 (-.f64 (/.f64 x y) (/.f64 1 y)) 1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(+.f64 (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (neg.f64 (/.f64 1 y)) 2))
(+.f64 (/.f64 1 y) (+.f64 (+.f64 1 (/.f64 x y)) (*.f64 2 (neg.f64 (/.f64 1 y)))))
(+.f64 (/.f64 1 y) (+.f64 (+.f64 1 (/.f64 x y)) (*.f64 (/.f64 1 y) -2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x y) (+.f64 1 (*.f64 (/.f64 1 y) -2))))
(+.f64 1 (+.f64 (+.f64 (/.f64 x y) (/.f64 1 y)) (*.f64 (/.f64 1 y) -2)))
(+.f64 1 (+.f64 (*.f64 (/.f64 1 y) -2) (+.f64 (/.f64 x y) (/.f64 1 y))))
(+.f64 (*.f64 (neg.f64 (/.f64 1 y)) 2) (+.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 (/.f64 1 y) (+.f64 (+.f64 1 (/.f64 x y)) (*.f64 2 (neg.f64 (/.f64 1 y)))))
(+.f64 (/.f64 1 y) (+.f64 (+.f64 1 (/.f64 x y)) (*.f64 (/.f64 1 y) -2)))
(+.f64 (/.f64 1 y) (+.f64 (/.f64 x y) (+.f64 1 (*.f64 (/.f64 1 y) -2))))
(+.f64 1 (+.f64 (+.f64 (/.f64 x y) (/.f64 1 y)) (*.f64 (/.f64 1 y) -2)))
(+.f64 1 (+.f64 (*.f64 (/.f64 1 y) -2) (+.f64 (/.f64 x y) (/.f64 1 y))))
(*.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))) (*.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)))) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(*.f64 (/.f64 -1 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y)))) (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (/.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(/.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) -1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(/.f64 (*.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 2) 2)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(/.f64 (*.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))) 2) -2)
(/.f64 (*.f64 2 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y)))) -2)
(/.f64 (*.f64 2 (-.f64 -1 (-.f64 (/.f64 x y) (/.f64 1 y)))) -2)
(pow.f64 (-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y)) 1)
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))
(neg.f64 (+.f64 (/.f64 1 y) (-.f64 -1 (/.f64 x y))))
(+.f64 1 (-.f64 (/.f64 x y) (/.f64 1 y)))

localize47.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x)
0.0b
(*.f64 y (-.f64 1 x))
3.3b
(*.f64 (pow.f64 y 2) (-.f64 x 1))
5.9b
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
Compiler

Compiled 51 to 34 computations (33.3% saved)

series8.0ms (0.1%)

Counts
3 → 55
Calls

18 calls:

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

rewrite248.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
1208×rational_best.json-simplify-57
686×rational_best.json-simplify-44
638×rational_best.json-5
636×rational_best.json-2
636×rational_best.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01387
111087
235187
3138787
4607187
Stop Event
node limit
Counts
3 → 51
Calls
Call 1
Inputs
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (+.f64 x -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))))

simplify274.0ms (2.8%)

Algorithm
egg-herbie
Rules
1520×rational_best.json-simplify-80
1400×rational_best.json-simplify-78
1060×rational_best.json-simplify-54
998×rational_best.json-simplify-135
844×rational_best.json-simplify-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01293316
12703234
211403228
347443222
Stop Event
node limit
Counts
106 → 102
Calls
Call 1
Inputs
x
(+.f64 (*.f64 y (-.f64 1 x)) x)
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) y)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
x
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(*.f64 (+.f64 1 (pow.f64 y 2)) x)
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(-.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 0)
(-.f64 0 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(*.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(/.f64 (*.f64 2 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) 2)
(pow.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(neg.f64 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)
(+.f64 0 (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(-.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)
(-.f64 0 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)
(/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(/.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (+.f64 x -1))) 2)
(pow.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)
(neg.f64 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(-.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 0)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(/.f64 (*.f64 2 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 2)
(pow.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(neg.f64 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
Outputs
x
(+.f64 (*.f64 y (-.f64 1 x)) x)
(+.f64 x (*.f64 y (-.f64 1 x)))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) y)
(+.f64 y (*.f64 (pow.f64 y 2) -1))
(+.f64 y (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)
(*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1))))
(*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y))))
(*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (*.f64 (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 -1 y))) x)))
(+.f64 (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (*.f64 y -1)))) (+.f64 y (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (+.f64 1 (neg.f64 y)))) (neg.f64 (pow.f64 y 2))))
(+.f64 y (+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1)))
(*.f64 x (*.f64 -1 (+.f64 (+.f64 y (*.f64 (pow.f64 y 2) -1)) -1)))
(neg.f64 (*.f64 x (+.f64 -1 (+.f64 y (neg.f64 (pow.f64 y 2))))))
(*.f64 (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1)) (neg.f64 x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(+.f64 y (+.f64 (*.f64 x (*.f64 -1 (+.f64 (+.f64 y (*.f64 (pow.f64 y 2) -1)) -1))) (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (+.f64 y (neg.f64 (pow.f64 y 2))))))))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(+.f64 y (neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(+.f64 y (+.f64 (*.f64 x (*.f64 -1 (+.f64 (+.f64 y (*.f64 (pow.f64 y 2) -1)) -1))) (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (+.f64 y (neg.f64 (pow.f64 y 2))))))))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(+.f64 y (neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (*.f64 x (-.f64 (+.f64 (*.f64 -1 (pow.f64 y 2)) y) 1))) y))
(+.f64 y (+.f64 (*.f64 x (*.f64 -1 (+.f64 (+.f64 y (*.f64 (pow.f64 y 2) -1)) -1))) (*.f64 (pow.f64 y 2) -1)))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (+.f64 y (neg.f64 (pow.f64 y 2))))))))
(+.f64 y (*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(+.f64 y (neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y -1))))))
(*.f64 -1 (pow.f64 y 2))
(*.f64 (pow.f64 y 2) -1)
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(*.f64 (pow.f64 y 2) x)
(*.f64 x (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(*.f64 (pow.f64 y 2) x)
(*.f64 x (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
x
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (pow.f64 y 2) (-.f64 x 1))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(+.f64 x (*.f64 (pow.f64 y 2) (-.f64 x 1)))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 -1 (pow.f64 y 2))
(*.f64 (pow.f64 y 2) -1)
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(*.f64 (+.f64 1 (pow.f64 y 2)) x)
(*.f64 x (+.f64 1 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 (+.f64 1 (pow.f64 y 2)) x))
(+.f64 (*.f64 (pow.f64 y 2) -1) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 x (+.f64 1 (pow.f64 y 2))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x))
(*.f64 -1 (*.f64 x (+.f64 (*.f64 (pow.f64 y 2) -1) -1)))
(neg.f64 (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2)))))
(*.f64 (+.f64 -1 (neg.f64 (pow.f64 y 2))) (neg.f64 x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(*.f64 -1 (+.f64 (*.f64 x (+.f64 (*.f64 (pow.f64 y 2) -1) -1)) (pow.f64 y 2)))
(*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(*.f64 -1 (+.f64 (*.f64 x (+.f64 (*.f64 (pow.f64 y 2) -1) -1)) (pow.f64 y 2)))
(*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 (pow.f64 y 2)) 1) x)))
(*.f64 -1 (+.f64 (*.f64 x (+.f64 (*.f64 (pow.f64 y 2) -1) -1)) (pow.f64 y 2)))
(*.f64 -1 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(neg.f64 (+.f64 (pow.f64 y 2) (*.f64 x (+.f64 -1 (neg.f64 (pow.f64 y 2))))))
(-.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 0)
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(-.f64 0 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(/.f64 (*.f64 2 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))) 2)
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(pow.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 1)
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(neg.f64 (neg.f64 (+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (+.f64 (*.f64 y (-.f64 1 x)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(+.f64 0 (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(-.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 0)
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(-.f64 0 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (/.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(/.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (+.f64 x -1))) 2)
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(pow.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1)) 1)
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(neg.f64 (neg.f64 (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(*.f64 (pow.f64 y 2) (+.f64 x -1))
(-.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 0)
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(-.f64 0 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 1 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) (*.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (/.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(/.f64 (*.f64 2 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))) 2)
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(pow.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1))) 1)
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))
(neg.f64 (neg.f64 (+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))))
(+.f64 x (*.f64 (pow.f64 y 2) (+.f64 x -1)))

eval236.0ms (2.4%)

Compiler

Compiled 8655 to 5553 computations (35.8% saved)

prune93.0ms (0.9%)

Pruning

10 alts after pruning (6 fresh and 4 done)

PrunedKeptTotal
New3694373
Fresh022
Picked101
Done145
Total37110381
Error
0.0b
Counts
381 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.3b
(/.f64 y (+.f64 y 1))
33.1b
(/.f64 x (+.f64 y 1))
55.1b
(/.f64 x y)
30.7b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
41.5b
(+.f64 (*.f64 x (neg.f64 y)) x)
41.6b
(+.f64 x (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))
54.6b
y
41.2b
x
38.3b
1
Compiler

Compiled 68 to 47 computations (30.9% saved)

localize24.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (pow.f64 y 2) (neg.f64 y))
2.4b
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
Compiler

Compiled 34 to 18 computations (47.1% saved)

series7.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite148.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
964×rational_best.json-simplify-57
690×rational_best.json-simplify-80
604×rational_best.json-simplify-43
554×rational_best.json-simplify-44
492×rational_best.json-5
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01040
18740
228340
3109640
4470140
Stop Event
node limit
Counts
2 → 36
Calls
Call 1
Inputs
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))))))

simplify315.0ms (3.2%)

Algorithm
egg-herbie
Rules
1142×rational_best.json-simplify-80
1100×rational_best.json-simplify-82
900×rational_best.json-simplify-78
734×rational_best.json-simplify-2
508×rational_best.json-simplify-49
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0831390
11681370
25811370
313811370
429471370
552411370
Stop Event
node limit
Counts
72 → 52
Calls
Call 1
Inputs
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)
(+.f64 0 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))
(-.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)
(-.f64 0 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)
(/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x)) 2)
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x))) -2)
(pow.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)
(neg.f64 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(-.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 0)
(-.f64 0 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(*.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))
(*.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(*.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(/.f64 (*.f64 2 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2)
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2) -2)
(pow.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(neg.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))
Outputs
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(*.f64 -1 (*.f64 y x))
(*.f64 y (*.f64 -1 x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 y (*.f64 -1 x)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 (pow.f64 y 2) x))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 0 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(-.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 0)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(-.f64 0 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x)) 2)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 x x))) -2)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(pow.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))) 1)
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(neg.f64 (neg.f64 (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y)))
(-.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 0)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(-.f64 0 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))) (*.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 1 (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y)))) (+.f64 (pow.f64 y 2) (neg.f64 y))) (*.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (/.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(/.f64 (*.f64 2 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))) 2) -2)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(pow.f64 (+.f64 (pow.f64 y 2) (neg.f64 y)) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (neg.f64 (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))

localize16.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 16 to 5 computations (68.8% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite173.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
900×rational_best.json-simplify-57
836×rational_best.json-simplify-82
622×rational_best.json-simplify-44
606×rational_best.json-simplify-80
582×rational_best.json-simplify-43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
17217
225417
3102217
4446517
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(+.f64 (*.f64 x (neg.f64 y)) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 (neg.f64 y) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (*.f64 y -2) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x (+.f64 (*.f64 y -2) 2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))))))

simplify423.0ms (4.3%)

Algorithm
egg-herbie
Rules
1416×rational_best.json-simplify-80
1326×rational_best.json-simplify-78
1300×rational_best.json-simplify-24
1280×rational_best.json-simplify-94
980×rational_best.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0941080
12221044
29101044
339171038
477391038
Stop Event
node limit
Counts
60 → 54
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
x
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(*.f64 -1 (*.f64 y x))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(-.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 0)
(-.f64 0 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 (neg.f64 y) 1))
(*.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 x x)))
(*.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x (/.f64 1 x))))
(*.f64 x (*.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 (neg.f64 y) (/.f64 x x)))
(*.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 1 x))))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))))
(*.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 (+.f64 (neg.f64 y) 1) x)
(*.f64 (/.f64 1 x) (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x x)))
(*.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 (neg.f64 y) (*.f64 x x))))
(*.f64 (*.f64 x x) (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 1 x)))
(*.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))
(*.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(/.f64 (*.f64 x (+.f64 (*.f64 y -2) 2)) 2)
(/.f64 (neg.f64 (*.f64 x (+.f64 (*.f64 y -2) 2))) -2)
(pow.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(neg.f64 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))
Outputs
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 1 (*.f64 -1 y)) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 (+.f64 y -1) (*.f64 -1 x))
(neg.f64 (*.f64 x (-.f64 y 1)))
(*.f64 (-.f64 y 1) (neg.f64 x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 (+.f64 y -1) (*.f64 -1 x))
(neg.f64 (*.f64 x (-.f64 y 1)))
(*.f64 (-.f64 y 1) (neg.f64 x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 (+.f64 y -1) (*.f64 -1 x))
(neg.f64 (*.f64 x (-.f64 y 1)))
(*.f64 (-.f64 y 1) (neg.f64 x))
(*.f64 -1 (*.f64 (-.f64 y 1) x))
(*.f64 (+.f64 y -1) (*.f64 -1 x))
(neg.f64 (*.f64 x (-.f64 y 1)))
(*.f64 (-.f64 y 1) (neg.f64 x))
x
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 (*.f64 -1 (*.f64 y x)) x)
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(+.f64 x (*.f64 -1 (*.f64 y x)))
(+.f64 x (neg.f64 (*.f64 y x)))
(+.f64 x (*.f64 y (neg.f64 x)))
(-.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 0)
(*.f64 x (+.f64 1 (neg.f64 y)))
(-.f64 0 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 x (+.f64 (neg.f64 y) 1))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 x x)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 x (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x (/.f64 1 x))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 x (*.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 x (+.f64 (neg.f64 y) (/.f64 x x)))
(*.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 1 x))))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (+.f64 (neg.f64 y) 1) x)
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 x) (*.f64 (+.f64 (neg.f64 y) 1) (*.f64 x x)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 (neg.f64 y) (*.f64 x x))))
(*.f64 (/.f64 1 x) (+.f64 (*.f64 x x) (*.f64 x (*.f64 (neg.f64 y) x))))
(*.f64 (/.f64 1 x) (*.f64 x (+.f64 x (neg.f64 (*.f64 y x)))))
(*.f64 (/.f64 1 x) (*.f64 x (+.f64 x (*.f64 y (neg.f64 x)))))
(*.f64 x (/.f64 (+.f64 x (*.f64 y (neg.f64 x))) x))
(*.f64 (*.f64 x x) (*.f64 (+.f64 (neg.f64 y) 1) (/.f64 1 x)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1)))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))) (*.f64 (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1))))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 1 (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (*.f64 (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (+.f64 (neg.f64 y) 1)))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1)))) (*.f64 x (+.f64 (neg.f64 y) 1))) (*.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(*.f64 x (+.f64 1 (neg.f64 y)))
(/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (/.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))
(/.f64 (*.f64 x (+.f64 (*.f64 y -2) 2)) 2)
(/.f64 (neg.f64 (*.f64 x (+.f64 (*.f64 y -2) 2))) -2)
(/.f64 (*.f64 x (+.f64 (*.f64 y -2) 2)) 2)
(pow.f64 (*.f64 x (+.f64 (neg.f64 y) 1)) 1)
(*.f64 x (+.f64 1 (neg.f64 y)))
(neg.f64 (neg.f64 (*.f64 x (+.f64 (neg.f64 y) 1))))
(*.f64 x (+.f64 1 (neg.f64 y)))

localize5.0ms (0%)

Compiler

Compiled 7 to 3 computations (57.1% saved)

eval64.0ms (0.6%)

Compiler

Compiled 2044 to 1143 computations (44.1% saved)

prune28.0ms (0.3%)

Pruning

10 alts after pruning (4 fresh and 6 done)

PrunedKeptTotal
New1051106
Fresh033
Picked011
Done156
Total10610116
Error
0.0b
Counts
116 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.3b
(/.f64 y (+.f64 y 1))
33.1b
(/.f64 x (+.f64 y 1))
55.1b
(/.f64 x y)
30.7b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
41.5b
(+.f64 (*.f64 x (neg.f64 y)) x)
41.6b
(+.f64 x (*.f64 (-.f64 (pow.f64 y 2) y) x))
54.6b
y
41.2b
x
38.3b
1
Compiler

Compiled 67 to 46 computations (31.3% saved)

localize26.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 29 to 17 computations (41.4% saved)

series1.0ms (0%)

Counts
2 → 24
Calls

9 calls:

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

rewrite160.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1908×rational_best.json-5
1906×rational_best.json-2
1906×rational_best.json-3
1906×rational_best.json-1
1906×rational_best.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
16632
221932
389632
4386632
Stop Event
node limit
Counts
2 → 33
Calls
Call 1
Inputs
(*.f64 (-.f64 (pow.f64 y 2) y) x)
(-.f64 (pow.f64 y 2) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (pow.f64 y 2) y) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (*.f64 (-.f64 (pow.f64 y 2) y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 y 2) y) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 y 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 y 2) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 y 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (pow.f64 y 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y (pow.f64 y 2)) (-.f64 0 (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 y 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (pow.f64 y 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 1 (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (pow.f64 y 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (pow.f64 y 2) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y (pow.f64 y 2)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 y 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 y (pow.f64 y 2)))))))

simplify471.0ms (4.8%)

Algorithm
egg-herbie
Rules
1368×rational_best.json-simplify-80
1300×rational_best.json-simplify-78
1186×rational_best.json-simplify-94
1152×rational_best.json-simplify-24
1112×rational_best.json-simplify-135
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0721093
11341073
2617945
33500945
47423945
Stop Event
node limit
Counts
57 → 51
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 (pow.f64 y 2) x)
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)
(+.f64 0 (*.f64 (-.f64 (pow.f64 y 2) y) x))
(-.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (*.f64 (-.f64 (pow.f64 y 2) y) x)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 y 2) y) x)) 2)
(pow.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(+.f64 (-.f64 (pow.f64 y 2) y) 0)
(+.f64 0 (-.f64 (pow.f64 y 2) y))
(+.f64 (neg.f64 y) (pow.f64 y 2))
(+.f64 (+.f64 y (pow.f64 y 2)) (-.f64 0 (+.f64 y y)))
(*.f64 (-.f64 (pow.f64 y 2) y) 1)
(*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(*.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))))
(*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))
(*.f64 1 (-.f64 (pow.f64 y 2) y))
(*.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y))
(*.f64 (-.f64 y (pow.f64 y 2)) -1)
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 1 (-.f64 (pow.f64 y 2) y)))
(*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y))
(*.f64 (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))
(*.f64 (/.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(/.f64 (-.f64 (pow.f64 y 2) y) 1)
(/.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(/.f64 (-.f64 y (pow.f64 y 2)) -1)
(/.f64 (*.f64 2 (-.f64 (pow.f64 y 2) y)) 2)
(/.f64 (*.f64 (-.f64 y (pow.f64 y 2)) 2) -2)
(pow.f64 (-.f64 (pow.f64 y 2) y) 1)
(neg.f64 (-.f64 y (pow.f64 y 2)))
Outputs
(*.f64 -1 (*.f64 y x))
(neg.f64 (*.f64 y x))
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(*.f64 (pow.f64 y 2) x)
(*.f64 x (pow.f64 y 2))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(*.f64 (pow.f64 y 2) x)
(*.f64 x (pow.f64 y 2))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 y 2) x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 -1 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x (pow.f64 y 2)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (pow.f64 y 2)))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (pow.f64 y 2) (*.f64 -1 y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)
(*.f64 x (-.f64 (pow.f64 y 2) y))
(+.f64 0 (*.f64 (-.f64 (pow.f64 y 2) y) x))
(*.f64 x (-.f64 (pow.f64 y 2) y))
(-.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 0)
(*.f64 x (-.f64 (pow.f64 y 2) y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)
(*.f64 x (-.f64 (pow.f64 y 2) y))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) (*.f64 (-.f64 (pow.f64 y 2) y) x)))
(*.f64 x (-.f64 (pow.f64 y 2) y))
(/.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 y 2) y) x)) 2)
(*.f64 x (-.f64 (pow.f64 y 2) y))
(pow.f64 (*.f64 (-.f64 (pow.f64 y 2) y) x) 1)
(*.f64 x (-.f64 (pow.f64 y 2) y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (-.f64 (pow.f64 y 2) y) 0)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 0 (-.f64 (pow.f64 y 2) y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (neg.f64 y) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(+.f64 (+.f64 y (pow.f64 y 2)) (-.f64 0 (+.f64 y y)))
(+.f64 (+.f64 y (pow.f64 y 2)) (neg.f64 (+.f64 y y)))
(+.f64 y (+.f64 (pow.f64 y 2) (neg.f64 (+.f64 y y))))
(*.f64 (-.f64 (pow.f64 y 2) y) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 1 (-.f64 (pow.f64 y 2) y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (-.f64 y (pow.f64 y 2)) -1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 1 (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (-.f64 (pow.f64 y 2) y) (*.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 (/.f64 1 (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))) (*.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y))))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) y) (/.f64 1 (-.f64 (pow.f64 y 2) y))) (-.f64 (pow.f64 y 2) y)) (*.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(/.f64 (-.f64 (pow.f64 y 2) y) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(/.f64 (-.f64 (pow.f64 y 2) y) (/.f64 (-.f64 (pow.f64 y 2) y) (-.f64 (pow.f64 y 2) y)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(/.f64 (-.f64 y (pow.f64 y 2)) -1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(/.f64 (*.f64 2 (-.f64 (pow.f64 y 2) y)) 2)
(/.f64 (*.f64 2 (-.f64 y (pow.f64 y 2))) -2)
(/.f64 (*.f64 (-.f64 y (pow.f64 y 2)) 2) -2)
(/.f64 (*.f64 2 (-.f64 (pow.f64 y 2) y)) 2)
(/.f64 (*.f64 2 (-.f64 y (pow.f64 y 2))) -2)
(pow.f64 (-.f64 (pow.f64 y 2) y) 1)
(+.f64 (pow.f64 y 2) (neg.f64 y))
(neg.f64 (-.f64 y (pow.f64 y 2)))
(-.f64 (pow.f64 y 2) y)
(neg.f64 (-.f64 y (pow.f64 y 2)))
(+.f64 (pow.f64 y 2) (neg.f64 y))
(-.f64 (pow.f64 y 2) y)

eval26.0ms (0.3%)

Compiler

Compiled 767 to 471 computations (38.6% saved)

prune15.0ms (0.1%)

Pruning

10 alts after pruning (3 fresh and 7 done)

PrunedKeptTotal
New51051
Fresh033
Picked011
Done066
Total511061
Error
0.0b
Counts
61 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.3b
(/.f64 y (+.f64 y 1))
33.1b
(/.f64 x (+.f64 y 1))
55.1b
(/.f64 x y)
30.7b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
41.5b
(+.f64 (*.f64 x (neg.f64 y)) x)
41.6b
(+.f64 x (*.f64 (-.f64 (pow.f64 y 2) y) x))
54.6b
y
41.2b
x
38.3b
1
Compiler

Compiled 67 to 46 computations (31.3% saved)

regimes41.0ms (0.4%)

Counts
13 → 1
Calls
Call 1
Inputs
1
x
y
(/.f64 x y)
(/.f64 x (+.f64 y 1))
(/.f64 y (+.f64 y 1))
(+.f64 (*.f64 x (neg.f64 y)) x)
(+.f64 (*.f64 y (-.f64 1 x)) x)
(/.f64 (+.f64 x y) (+.f64 y 1))
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
(+.f64 x (*.f64 (-.f64 (pow.f64 y 2) y) x))
(+.f64 x (*.f64 x (+.f64 (pow.f64 y 2) (neg.f64 y))))
(+.f64 (*.f64 y (-.f64 1 x)) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 x 1)) x))
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))
Calls

3 calls:

16.0ms
y
10.0ms
(/.f64 (+.f64 x y) (+.f64 y 1))
10.0ms
x
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(/.f64 (+.f64 x y) (+.f64 y 1))
Compiler

Compiled 96 to 56 computations (41.7% saved)

regimes74.0ms (0.7%)

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

2 calls:

46.0ms
x
25.0ms
y
Results
ErrorSegmentsBranch
13.9b5x
9.0b3y
Compiler

Compiled 37 to 21 computations (43.2% saved)

bsearch17.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
3.0ms
4.355338107177079e-10
4.776974247889054e-10
14.0ms
-5.265975267469945
-0.10954651418244828
Results
15.0ms144×body256valid
Compiler

Compiled 176 to 127 computations (27.8% saved)

regimes88.0ms (0.9%)

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

2 calls:

43.0ms
x
42.0ms
y
Results
ErrorSegmentsBranch
13.9b5x
13.8b5y
Compiler

Compiled 30 to 17 computations (43.3% saved)

bsearch86.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
13338082421229200.0
2.7544159722570834e+21
16.0ms
-2.9266265267866904e-56
-5.395552054286594e-57
11.0ms
-3.3105382730358255e-26
-1.95709677934375e-26
32.0ms
-14200345862168916.0
-282326.6854863106
Results
76.0ms464×body256valid
Compiler

Compiled 398 to 308 computations (22.6% saved)

regimes111.0ms (1.1%)

Counts
5 → 5
Calls
Call 1
Inputs
1
x
y
(/.f64 x y)
(/.f64 x (+.f64 y 1))
Outputs
1
(/.f64 x (+.f64 y 1))
y
(/.f64 x (+.f64 y 1))
1
Calls

2 calls:

74.0ms
x
35.0ms
y
Results
ErrorSegmentsBranch
19.2b9x
13.8b5y
Compiler

Compiled 19 to 11 computations (42.1% saved)

bsearch74.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
13338082421229200.0
2.7544159722570834e+21
17.0ms
-2.9266265267866904e-56
-5.395552054286594e-57
9.0ms
-3.3105382730358255e-26
-1.95709677934375e-26
23.0ms
-14200345862168916.0
-282326.6854863106
Results
64.0ms464×body256valid
Compiler

Compiled 362 to 290 computations (19.9% saved)

regimes138.0ms (1.4%)

Accuracy

Total -45.0b remaining (-253.7%)

Threshold costs -45.0b (-253.7%)

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

2 calls:

113.0ms
x
24.0ms
y
Results
ErrorSegmentsBranch
26.7b9x
17.8b3y
Compiler

Compiled 14 to 8 computations (42.9% saved)

bsearch23.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
5.0ms
4.355338107177079e-10
4.776974247889054e-10
18.0ms
-5.265975267469945
-0.10954651418244828
Results
20.0ms144×body256valid
Compiler

Compiled 86 to 73 computations (15.1% saved)

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046246
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(if (<=.f64 y -7926335344172073/72057594037927936) (/.f64 y (+.f64 y 1)) (if (<=.f64 y 2272780540875503/4835703278458516698824704) (+.f64 (*.f64 y (-.f64 1 x)) x) (/.f64 y (+.f64 y 1))))
(if (<=.f64 y -3000000000000) 1 (if (<=.f64 y -2526256292021047/87112285931760246646623899502532662132736) (/.f64 x (+.f64 y 1)) (if (<=.f64 y -6404820609821643/220855883097298041197912187592864814478435487109452369765200775161577472) y (if (<=.f64 y 95000000000000000) (/.f64 x (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(if (<=.f64 y -920000000000) 1 (if (<=.f64 y -2526256292021047/87112285931760246646623899502532662132736) (/.f64 x (+.f64 y 1)) (if (<=.f64 y -6404820609821643/220855883097298041197912187592864814478435487109452369765200775161577472) y (if (<=.f64 y 128000000000000000000) (/.f64 x (+.f64 y 1)) 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 2272780540875503/4835703278458516698824704) x 1))
1
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(if (<=.f64 y -7926335344172073/72057594037927936) (/.f64 y (+.f64 y 1)) (if (<=.f64 y 2272780540875503/4835703278458516698824704) (+.f64 (*.f64 y (-.f64 1 x)) x) (/.f64 y (+.f64 y 1))))
(if (<=.f64 y -3000000000000) 1 (if (<=.f64 y -2526256292021047/87112285931760246646623899502532662132736) (/.f64 x (+.f64 y 1)) (if (<=.f64 y -6404820609821643/220855883097298041197912187592864814478435487109452369765200775161577472) y (if (<=.f64 y 95000000000000000) (/.f64 x (+.f64 y 1)) (/.f64 y (+.f64 y 1))))))
(if (<=.f64 y -920000000000) 1 (if (<=.f64 y -2526256292021047/87112285931760246646623899502532662132736) (/.f64 x (+.f64 y 1)) (if (<=.f64 y -6404820609821643/220855883097298041197912187592864814478435487109452369765200775161577472) y (if (<=.f64 y 128000000000000000000) (/.f64 x (+.f64 y 1)) 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 2272780540875503/4835703278458516698824704) x 1))
1
Compiler

Compiled 118 to 83 computations (29.7% saved)

soundness0.0ms (0%)

end253.0ms (2.6%)

Compiler

Compiled 108 to 73 computations (32.4% saved)

Profiling

Loading profile data...