Details

Time bar (total: 8.6s)

analyze64.0ms (0.7%)

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)

sample1.5s (16.9%)

Results
1.4s8254×body256valid
0.0msbody1024valid
0.0msbody512valid
Bogosity

preprocess194.0ms (2.3%)

Algorithm
egg-herbie
Rules
2494×rational.json-simplify-35
1278×rational.json-simplify-2
1270×rational.json-simplify-48
910×rational.json-simplify-1
772×rational.json-simplify-47
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01138
11938
23938
39438
425738
582238
6123538
7170538
8370738
9573638
10766438
022
Stop Event
saturated
node limit
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))
(/.f64 (+.f64 x y) (-.f64 x -1))
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify188.0ms (2.2%)

Algorithm
egg-herbie
Rules
2094×rational.json-simplify-35
1236×rational.json-simplify-52
1132×rational.json-simplify-51
1052×rational.json-simplify-2
900×rational.json-simplify-53
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11319
22619
36319
417419
553819
680819
7108219
8218019
9384019
10594019
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))

eval0.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)

localize7.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)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite130.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1486×rational.json-1
1486×rational.json-2
1486×rational.json-4
1486×rational.json-3
1478×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
16519
217319
341219
4103619
5409719
Stop Event
node limit
Counts
1 → 78
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 -1 (-.f64 1 (/.f64 (+.f64 x y) (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))))) (#(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 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x y) (/.f64 1 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x y) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x y) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))))) (#(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 y 1) (/.f64 (/.f64 1 (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(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) 2) (/.f64 1/2 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (+.f64 x y) (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 4) (/.f64 1/2 (+.f64 y (+.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 4) (*.f64 (/.f64 1 (+.f64 y 1)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 y 1)) (+.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 y 1)) (/.f64 1 (/.f64 1 (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 x y)) (/.f64 1 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 y 1)) (*.f64 (+.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) -2) (/.f64 1/2 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (*.f64 (+.f64 y 1) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 (+.f64 y 1))) (*.f64 (+.f64 x y) 1/2))))) (#(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 1/2 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)) (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 y 1)) (*.f64 (+.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 x y)) (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 y (+.f64 y 2))) (*.f64 (+.f64 x y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 1/2) (*.f64 2 (/.f64 1 (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x y) 1/2) (/.f64 2 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 x y)) (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 y 1)) 1/4) (*.f64 (+.f64 x y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))) (+.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) (+.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 (+.f64 x y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1/2 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (+.f64 x y))) (/.f64 1 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.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 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (+.f64 y 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 1 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 (+.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 2 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 (+.f64 x y) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y 1) -2)) (*.f64 (+.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 (+.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 x y) (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))))))

simplify112.0ms (1.3%)

Algorithm
egg-herbie
Rules
1296×rational.json-simplify-61
1104×rational.json-simplify-29
1042×rational.json-simplify-35
850×rational.json-simplify-51
840×rational.json-simplify-55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02003480
14463408
212433308
338933224
469493224
Stop Event
node limit
Counts
102 → 174
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 -1 (-.f64 1 (/.f64 (+.f64 x y) (-.f64 -1 y))))
(+.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))
(-.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(-.f64 0 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(*.f64 (+.f64 x y) (/.f64 1 (+.f64 y 1)))
(*.f64 (+.f64 x y) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))))
(*.f64 (+.f64 x y) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(*.f64 (*.f64 (+.f64 x y) 2) (/.f64 1/2 (+.f64 y 1)))
(*.f64 2 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))
(*.f64 -1 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(*.f64 -1 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))
(*.f64 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))) 1/2)
(*.f64 (*.f64 (+.f64 x y) 4) (/.f64 1/2 (+.f64 y (+.f64 y 2))))
(*.f64 (*.f64 (+.f64 x y) 4) (*.f64 (/.f64 1 (+.f64 y 1)) 1/4))
(*.f64 (*.f64 (+.f64 x y) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))
(*.f64 4 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)))
(*.f64 4 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))
(*.f64 (/.f64 1 (+.f64 y 1)) (+.f64 x y))
(*.f64 (/.f64 1 (+.f64 y 1)) (/.f64 1 (/.f64 1 (+.f64 x y))))
(*.f64 (neg.f64 (+.f64 x y)) (/.f64 1 (-.f64 -1 y)))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 1/4)
(*.f64 (*.f64 (+.f64 x y) 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))
(*.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 1/2 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))))
(*.f64 (/.f64 1/2 (+.f64 y 1)) (*.f64 (+.f64 x y) 2))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1/2 (-.f64 -1 y)))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (*.f64 (+.f64 y 1) -2)))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))
(*.f64 (*.f64 2 (/.f64 1 (+.f64 y 1))) (*.f64 (+.f64 x y) 1/2))
(*.f64 (/.f64 (+.f64 x y) (-.f64 -1 y)) -1)
(*.f64 (/.f64 1/2 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)) (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) 2)
(*.f64 (/.f64 2 (+.f64 y 1)) (*.f64 (+.f64 x y) 1/2))
(*.f64 (/.f64 -1 (+.f64 x y)) (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 1/2 (+.f64 y (+.f64 y 2))) (*.f64 (+.f64 x y) 4))
(*.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 (+.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) 1/2) (*.f64 2 (/.f64 1 (+.f64 y 1))))
(*.f64 (*.f64 (+.f64 x y) 1/2) (/.f64 2 (+.f64 y 1)))
(*.f64 1/4 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))
(*.f64 (/.f64 2 (+.f64 x y)) (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (*.f64 (/.f64 1 (+.f64 y 1)) 1/4) (*.f64 (+.f64 x y) 4))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))) (+.f64 x y))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) (+.f64 x y))
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 (+.f64 x y) 4))
(*.f64 (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (+.f64 x y)))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1/2 (+.f64 x y)))
(*.f64 (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)))
(*.f64 (/.f64 1 (/.f64 1 (+.f64 x y))) (/.f64 1 (+.f64 y 1)))
(*.f64 (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1 (+.f64 x y)))
(*.f64 (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 -1 (+.f64 x y)))
(*.f64 (/.f64 (/.f64 1 (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 1 (+.f64 x y)))
(*.f64 (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (+.f64 x y)))
(*.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)
(*.f64 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)) 4)
(*.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 (+.f64 x y) -2))
(*.f64 (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 2 (+.f64 x y)))
(*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 4)
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 (+.f64 x y) 8))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) -2)) (*.f64 (+.f64 x y) -2))
(*.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 (+.f64 x y) -2))
(pow.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(neg.f64 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(neg.f64 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(neg.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))
Outputs
(/.f64 y (+.f64 1 y))
(/.f64 y (+.f64 y 1))
(/.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 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 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 y -1)) (/.f64 x (-.f64 y -1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.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 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 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 y -1)) (/.f64 x (-.f64 y -1)))
(/.f64 x (+.f64 1 y))
(/.f64 x (+.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 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 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 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)))))
1
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
(+.f64 (/.f64 x y) (-.f64 1 (/.f64 1 y)))
(+.f64 1 (-.f64 (/.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 1 (/.f64 x y)) (-.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (-.f64 (+.f64 1 (/.f64 x y)) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2)))))
(+.f64 1 (+.f64 (/.f64 x y) (-.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 (/.f64 1 y) (/.f64 x (pow.f64 y 2))))))
(+.f64 1 (+.f64 (/.f64 1 (pow.f64 y 2)) (-.f64 (/.f64 x y) (+.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 1 (pow.f64 y 2))) (-.f64 (/.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 1 (+.f64 (/.f64 x y) (/.f64 1 (pow.f64 y 2)))) (-.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3))))))
(+.f64 1 (-.f64 (+.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))))))
(+.f64 1 (-.f64 (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 x y) (/.f64 1 (pow.f64 y 2)))) (+.f64 (/.f64 x (pow.f64 y 2)) (+.f64 (/.f64 1 y) (/.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 1 (/.f64 (-.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 1 (+.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)) (*.f64 (/.f64 x (pow.f64 y 2)) -1)) (/.f64 1 (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y))) (+.f64 (/.f64 1 (pow.f64 y 2)) 1))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 1 (*.f64 -1 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y)))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 (neg.f64 (/.f64 (-.f64 1 x) y)) (-.f64 1 (/.f64 x (pow.f64 y 2)))))
(+.f64 (neg.f64 (/.f64 (-.f64 1 x) y)) (+.f64 (/.f64 1 (pow.f64 y 2)) (-.f64 1 (/.f64 x (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 (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) y)) (*.f64 -1 (/.f64 (+.f64 1 (*.f64 x -1)) (pow.f64 y 3)))))))
(+.f64 (/.f64 1 (pow.f64 y 2)) (+.f64 (*.f64 -1 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (+.f64 1 (neg.f64 x)) y))) (-.f64 (neg.f64 (/.f64 (+.f64 1 (neg.f64 x)) (pow.f64 y 3))) -1)))
(+.f64 1 (+.f64 (/.f64 1 (pow.f64 y 2)) (*.f64 -1 (+.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 1 (pow.f64 y 2)) (+.f64 (neg.f64 (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (-.f64 1 x) y))) (-.f64 1 (/.f64 (-.f64 1 x) (pow.f64 y 3)))))
(+.f64 1 (+.f64 (/.f64 1 (pow.f64 y 2)) (neg.f64 (+.f64 (/.f64 (-.f64 1 x) y) (+.f64 (/.f64 x (pow.f64 y 2)) (/.f64 (-.f64 1 x) (pow.f64 y 3)))))))
(+.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 0)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.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 y x) (-.f64 y -1))
(+.f64 -1 (-.f64 1 (/.f64 (+.f64 x y) (-.f64 -1 y))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(+.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))
(/.f64 (+.f64 y x) (+.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 (+.f64 y x) (-.f64 y -1))
(-.f64 0 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (+.f64 x y) (/.f64 1 (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (+.f64 x y) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (+.f64 x y) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (-.f64 y -1))))
(*.f64 1 (/.f64 (+.f64 x y) (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 (+.f64 y x)) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (+.f64 y x)) (/.f64 (-.f64 -1 y) (+.f64 y x))))
(*.f64 (-.f64 y -1) (/.f64 1 (/.f64 (-.f64 y -1) (/.f64 (+.f64 y x) (-.f64 y -1)))))
(*.f64 (-.f64 y -1) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y))))
(*.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 1)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 2) (/.f64 1/2 (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 2 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 -1 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 -1 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))) 1/2)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 4) (/.f64 1/2 (+.f64 y (+.f64 y 2))))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (+.f64 y (+.f64 y 2)))))
(*.f64 (*.f64 (+.f64 y x) 4) (/.f64 1/2 (+.f64 y (+.f64 y 2))))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (/.f64 (-.f64 y -1) 1/2))))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (*.f64 2 (-.f64 y -1)))))
(*.f64 (*.f64 (+.f64 x y) 4) (*.f64 (/.f64 1 (+.f64 y 1)) 1/4))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 4 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 4 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (+.f64 y 1)) (+.f64 x y))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (+.f64 y 1)) (/.f64 1 (/.f64 1 (+.f64 x y))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (neg.f64 (+.f64 x y)) (/.f64 1 (-.f64 -1 y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 1 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (-.f64 -1 y))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 x y)) (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 1 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (-.f64 -1 y))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)))))
(*.f64 (/.f64 2 (/.f64 (+.f64 y x) (-.f64 y -1))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 1/2))))
(/.f64 (*.f64 (-.f64 y -1) (/.f64 2 (+.f64 y x))) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (/.f64 (+.f64 y x) (-.f64 -1 y)))))
(/.f64 (*.f64 (+.f64 y 1) (/.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)) (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)))))
(*.f64 (/.f64 2 (/.f64 (+.f64 y x) (-.f64 y -1))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 1/2))))
(/.f64 (*.f64 (-.f64 y -1) (/.f64 2 (+.f64 y x))) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (/.f64 (+.f64 y x) (-.f64 -1 y)))))
(/.f64 (*.f64 (+.f64 y 1) (/.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 1/4)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1 (*.f64 (+.f64 y 1) 8))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1/8 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1/8 (-.f64 y -1))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 -1/8 (-.f64 -1 y))))
(*.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 1/2 (*.f64 -2 (/.f64 (+.f64 x y) (-.f64 -1 y))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1/2 (+.f64 y 1)) (*.f64 (+.f64 x y) 2))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1/2 (-.f64 -1 y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (*.f64 (+.f64 y 1) -2)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 2 (/.f64 1 (+.f64 y 1))) (*.f64 (+.f64 x y) 1/2))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 (+.f64 x y) (-.f64 -1 y)) -1)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1/2 (+.f64 x y)) (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (+.f64 y (+.f64 y 2)))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (+.f64 y (+.f64 y 2))))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (/.f64 (-.f64 y -1) 1/2)))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (*.f64 2 (-.f64 y -1))))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (+.f64 y (+.f64 y 2))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)) (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (+.f64 y x))) (/.f64 2 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (+.f64 y x))) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) 2) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (*.f64 2 (+.f64 y x))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 2))))
(/.f64 (/.f64 (-.f64 y -1) (*.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (/.f64 (*.f64 (+.f64 y x) -2) (-.f64 y -1))) (+.f64 y x)))
(*.f64 (/.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) 2) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 2))))
(*.f64 (/.f64 (+.f64 x y) (+.f64 y (+.f64 y 2))) 2)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 2 (+.f64 y 1)) (*.f64 (+.f64 x y) 1/2))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (-.f64 y -1))))
(*.f64 (/.f64 -1 (+.f64 x y)) (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(*.f64 (/.f64 -1 (+.f64 y x)) (/.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 -1 (+.f64 y x)) (/.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (+.f64 y 1))) (-.f64 -1 y))))
(*.f64 (/.f64 -1 (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (/.f64 1/2 (+.f64 y (+.f64 y 2))) (*.f64 (+.f64 x y) 4))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (+.f64 y (+.f64 y 2)))))
(*.f64 (*.f64 (+.f64 y x) 4) (/.f64 1/2 (+.f64 y (+.f64 y 2))))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (/.f64 (-.f64 y -1) 1/2))))
(*.f64 (+.f64 y x) (*.f64 4 (/.f64 1/2 (*.f64 2 (-.f64 y -1)))))
(*.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 (+.f64 x y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 1/2) (*.f64 2 (/.f64 1 (+.f64 y 1))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 (+.f64 x y) 1/2) (/.f64 2 (+.f64 y 1)))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (-.f64 y -1))))
(*.f64 1/4 (*.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 2 (+.f64 x y)) (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))))
(*.f64 (/.f64 2 (+.f64 y x)) (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y)))))))
(*.f64 (/.f64 2 (+.f64 y x)) (/.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (+.f64 y 1))) (/.f64 (+.f64 y 1) 2))))
(*.f64 (/.f64 2 (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 2 (/.f64 (-.f64 y -1) (-.f64 -1 y))))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 y -1))) 2) (/.f64 2 (+.f64 y x)))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (+.f64 y 1))) 2) (/.f64 2 (+.f64 y x)))
(*.f64 (*.f64 (/.f64 1 (+.f64 y 1)) 1/4) (*.f64 (+.f64 x y) 4))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 y 1)))) (+.f64 x y))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) (+.f64 x y))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (+.f64 y x) (*.f64 1/2 (/.f64 2 (-.f64 y -1))))
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 (+.f64 x y) 4))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (+.f64 x y)))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 1 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (-.f64 -1 y))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1/2 (+.f64 x y)))
(*.f64 (/.f64 1/2 (+.f64 y x)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (+.f64 y (+.f64 y 2)))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (+.f64 y (+.f64 y 2))))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (/.f64 (-.f64 y -1) 1/2)))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (*.f64 2 (-.f64 y -1))))))
(*.f64 (/.f64 1/2 (+.f64 y x)) (*.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (+.f64 y x) (/.f64 (-.f64 -1 y) (+.f64 y (+.f64 y 2))))))
(*.f64 (/.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (+.f64 y x))) (/.f64 2 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (+.f64 y x))) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) 2) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (*.f64 2 (+.f64 y x))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 2))))
(/.f64 (/.f64 (-.f64 y -1) (*.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (/.f64 (*.f64 (+.f64 y x) -2) (-.f64 y -1))) (+.f64 y x)))
(*.f64 (/.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) 2) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 2))))
(*.f64 (/.f64 1 (/.f64 1 (+.f64 x y))) (/.f64 1 (+.f64 y 1)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 (+.f64 y 1) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 1 (+.f64 x y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 (-.f64 -1 y) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 -1 (+.f64 x y)))
(*.f64 (/.f64 -1 (+.f64 y x)) (/.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 -1 (+.f64 y x)) (/.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (+.f64 y 1))) (-.f64 -1 y))))
(*.f64 (/.f64 -1 (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (+.f64 y 1))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 (+.f64 y x)) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (+.f64 y x)) (/.f64 (-.f64 -1 y) (+.f64 y x))))
(*.f64 (-.f64 y -1) (/.f64 1 (/.f64 (-.f64 y -1) (/.f64 (+.f64 y x) (-.f64 y -1)))))
(*.f64 (-.f64 y -1) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y))))
(*.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y))))
(*.f64 (/.f64 1 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)))))
(*.f64 (/.f64 2 (/.f64 (+.f64 y x) (-.f64 y -1))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 1/2))))
(/.f64 (*.f64 (-.f64 y -1) (/.f64 2 (+.f64 y x))) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (/.f64 (+.f64 y x) (-.f64 -1 y)))))
(/.f64 (*.f64 (+.f64 y 1) (/.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 1 (+.f64 x y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 2 (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 (+.f64 y 1) (+.f64 x y)))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 1 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y))))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (-.f64 -1 y))))
(*.f64 (/.f64 (-.f64 y -1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (+.f64 y 1) (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (-.f64 -1 y)))))
(*.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 (+.f64 x y) (*.f64 (+.f64 y 1) 4)) 4)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 (+.f64 x y) -2))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1/2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))) (/.f64 (+.f64 y 1) (*.f64 (+.f64 x y) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) 1/2)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (*.f64 (-.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)))))
(*.f64 (/.f64 2 (/.f64 (+.f64 y x) (-.f64 y -1))) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 (-.f64 -1 y) 1/2))))
(/.f64 (*.f64 (-.f64 y -1) (/.f64 2 (+.f64 y x))) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 y x)) (/.f64 (+.f64 y x) (-.f64 -1 y)))))
(/.f64 (*.f64 (+.f64 y 1) (/.f64 2 (+.f64 y x))) (/.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) 1/2)) (/.f64 (+.f64 y x) (-.f64 -1 y))))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y))))) (/.f64 2 (+.f64 x y)))
(*.f64 (/.f64 2 (+.f64 y x)) (/.f64 (+.f64 y 1) (*.f64 2 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 -1 y)))))))
(*.f64 (/.f64 2 (+.f64 y x)) (/.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y 1) (/.f64 (+.f64 y x) (+.f64 y 1))) (/.f64 (+.f64 y 1) 2))))
(*.f64 (/.f64 2 (+.f64 y x)) (*.f64 (+.f64 y x) (/.f64 (/.f64 (+.f64 y x) (-.f64 -1 y)) (/.f64 2 (/.f64 (-.f64 y -1) (-.f64 -1 y))))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (-.f64 y -1))) 2) (/.f64 2 (+.f64 y x)))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (/.f64 (+.f64 y x) (+.f64 y 1))) 2) (/.f64 2 (+.f64 y x)))
(*.f64 (/.f64 (/.f64 (+.f64 x y) (+.f64 y 1)) 4) 4)
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 (+.f64 x y) 8))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1 (*.f64 (+.f64 y 1) 8))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1/8 (+.f64 y 1))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 1/8 (-.f64 y -1))))
(*.f64 (+.f64 y x) (*.f64 8 (/.f64 -1/8 (-.f64 -1 y))))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) -2)) (*.f64 (+.f64 x y) -2))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(*.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 (+.f64 x y) -2))
(/.f64 (+.f64 y x) (+.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))
(/.f64 (+.f64 y x) (-.f64 y -1))
(neg.f64 (/.f64 (+.f64 x y) (-.f64 -1 y)))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(neg.f64 (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (/.f64 (-.f64 -1 y) (+.f64 x y)) (/.f64 (+.f64 x y) (-.f64 -1 y)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))
(neg.f64 (/.f64 (*.f64 (+.f64 x y) 2) (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 (+.f64 y x) (+.f64 y 1))
(/.f64 (+.f64 y x) (-.f64 y -1))

eval47.0ms (0.6%)

Compiler

Compiled 3083 to 1879 computations (39.1% saved)

prune26.0ms (0.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1695174
Fresh000
Picked011
Done000
Total1696175
Error
0b
Counts
175 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.1b
(/.f64 y (-.f64 y -1))
32.4b
(/.f64 x (-.f64 y -1))
30.8b
(-.f64 1 (/.f64 (-.f64 1 x) y))
38.3b
x
36.2b
1
Compiler

Compiled 38 to 28 computations (26.3% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 20 to 13 computations (35% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite195.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
1228×rational.json-1
1228×rational.json-2
1228×rational.json-4
1228×rational.json-3
1220×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15713
215213
333813
484613
5329113
Stop Event
node limit
Counts
1 → 70
Calls
Call 1
Inputs
(/.f64 (-.f64 1 x) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 1 x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 1 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (+.f64 x -1) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) (*.f64 (-.f64 1 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 1 x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (+.f64 x -1) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 1 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 x) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 x) (*.f64 1/2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 2) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 2) (+.f64 (/.f64 1 (*.f64 y 4)) (/.f64 1 (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 1 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 x) (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 (-.f64 1 x) y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) (/.f64 2 y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 4) (/.f64 1 (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 4) (*.f64 (/.f64 1 y) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 4) (*.f64 1/2 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 1 (/.f64 1 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x -1) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 1 x)) (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 1 x)) (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (+.f64 x -1) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 1 x) y) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 8) (/.f64 1 (*.f64 y 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x -2)) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 x) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 1 x)) (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (*.f64 (-.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 y)) (*.f64 (-.f64 1 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x -1) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (-.f64 1 x)) (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 1/2 (-.f64 1 x))) (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (*.f64 (-.f64 1 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y 4)) (*.f64 (-.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 y) (+.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 (-.f64 1 x) y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x -1)) (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 1/2) (*.f64 2 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 x) 1/2) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 y) 1/4) (*.f64 (-.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 y)) (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1/2 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (*.f64 y (/.f64 1/2 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (-.f64 1 x))) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 1 (+.f64 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 x) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 y)) (*.f64 (-.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 2 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 1 x) y) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y 8)) (*.f64 (-.f64 1 x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y -2)) (+.f64 x (+.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 1 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 x -1) y))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 y (+.f64 x -1)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))))))

simplify373.0ms (4.3%)

Algorithm
egg-herbie
Rules
996×rational.json-simplify-2
924×rational.json-simplify-55
746×rational.json-simplify-44
740×rational.json-simplify-39
730×rational.json-simplify-47
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01441360
12951326
27691302
334681302
467131302
Stop Event
node limit
Counts
82 → 84
Calls
Call 1
Inputs
(/.f64 1 y)
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 (-.f64 1 x) y) 0)
(+.f64 0 (/.f64 (-.f64 1 x) y))
(+.f64 -1 (-.f64 1 (/.f64 (+.f64 x -1) y)))
(+.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) (*.f64 (-.f64 1 x) (/.f64 1/2 y)))
(-.f64 (/.f64 (-.f64 1 x) y) 0)
(-.f64 0 (/.f64 (+.f64 x -1) y))
(*.f64 1 (/.f64 (-.f64 1 x) y))
(*.f64 (-.f64 1 x) (/.f64 1 y))
(*.f64 (-.f64 1 x) (*.f64 1/2 (/.f64 2 y)))
(*.f64 y (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 (-.f64 1 x) y) 1)
(*.f64 (*.f64 (-.f64 1 x) 2) (/.f64 1/2 y))
(*.f64 (*.f64 (-.f64 1 x) 2) (+.f64 (/.f64 1 (*.f64 y 4)) (/.f64 1 (*.f64 y 4))))
(*.f64 2 (*.f64 (-.f64 1 x) (/.f64 1/2 y)))
(*.f64 4 (/.f64 (-.f64 1 x) (*.f64 y 4)))
(*.f64 4 (/.f64 (/.f64 (-.f64 1 x) y) 4))
(*.f64 (*.f64 (-.f64 1 x) (/.f64 2 y)) 1/2)
(*.f64 (*.f64 (-.f64 1 x) 4) (/.f64 1 (*.f64 y 4)))
(*.f64 (*.f64 (-.f64 1 x) 4) (*.f64 (/.f64 1 y) 1/4))
(*.f64 (*.f64 (-.f64 1 x) 4) (*.f64 1/2 (/.f64 1/2 y)))
(*.f64 (/.f64 1 y) (-.f64 1 x))
(*.f64 (/.f64 1 y) (/.f64 1 (/.f64 1 (-.f64 1 x))))
(*.f64 (+.f64 x -1) (/.f64 -1 y))
(*.f64 (/.f64 y (-.f64 1 x)) (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 y (-.f64 1 x)) (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 -1 (/.f64 (+.f64 x -1) y))
(*.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (*.f64 (/.f64 (-.f64 1 x) y) 4) 1/4)
(*.f64 (*.f64 (-.f64 1 x) 8) (/.f64 1 (*.f64 y 8)))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 1 (*.f64 y -2)))
(*.f64 1/2 (*.f64 (-.f64 1 x) (/.f64 2 y)))
(*.f64 (/.f64 1 (-.f64 1 x)) (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 1/2 y) (*.f64 (-.f64 1 x) 2))
(*.f64 (*.f64 2 (/.f64 1 y)) (*.f64 (-.f64 1 x) 1/2))
(*.f64 (/.f64 (+.f64 x -1) y) -1)
(*.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) 2)
(*.f64 (/.f64 1/2 (-.f64 1 x)) (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (*.f64 y (/.f64 1/2 (-.f64 1 x))) (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 2 y) (*.f64 (-.f64 1 x) 1/2))
(*.f64 (/.f64 1 (*.f64 y 4)) (*.f64 (-.f64 1 x) 4))
(*.f64 (/.f64 -1 y) (+.f64 x -1))
(*.f64 1/4 (*.f64 (/.f64 (-.f64 1 x) y) 4))
(*.f64 (/.f64 1 (+.f64 x -1)) (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 (*.f64 (-.f64 1 x) 1/2) (*.f64 2 (/.f64 1 y)))
(*.f64 (*.f64 (-.f64 1 x) 1/2) (/.f64 2 y))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 (*.f64 (/.f64 1 y) 1/4) (*.f64 (-.f64 1 x) 4))
(*.f64 (*.f64 1/2 (/.f64 2 y)) (-.f64 1 x))
(*.f64 (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1/2 (-.f64 1 x)))
(*.f64 (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (*.f64 y (/.f64 1/2 (-.f64 1 x))))
(*.f64 (/.f64 1 (/.f64 1 (-.f64 1 x))) (/.f64 1 y))
(*.f64 (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1 (-.f64 1 x)))
(*.f64 (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 1 (+.f64 x -1)))
(*.f64 (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) y)
(*.f64 (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))
(*.f64 (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (-.f64 1 x)))
(*.f64 (/.f64 (-.f64 1 x) (*.f64 y 4)) 4)
(*.f64 (*.f64 1/2 (/.f64 1/2 y)) (*.f64 (-.f64 1 x) 4))
(*.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))
(*.f64 (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))
(*.f64 (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 2 (-.f64 1 x)))
(*.f64 (/.f64 (/.f64 (-.f64 1 x) y) 4) 4)
(*.f64 (/.f64 1 (*.f64 y 8)) (*.f64 (-.f64 1 x) 8))
(*.f64 (/.f64 1 (*.f64 y -2)) (+.f64 x (+.f64 x -2)))
(pow.f64 (/.f64 (-.f64 1 x) y) 1)
(neg.f64 (/.f64 (+.f64 x -1) y))
(neg.f64 (/.f64 (/.f64 y (+.f64 x -1)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
Outputs
(/.f64 1 y)
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 x y))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 x y))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 1 y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 1 y) (neg.f64 (/.f64 x y)))
(+.f64 (/.f64 (-.f64 1 x) y) 0)
(/.f64 (-.f64 1 x) y)
(+.f64 0 (/.f64 (-.f64 1 x) y))
(/.f64 (-.f64 1 x) y)
(+.f64 -1 (-.f64 1 (/.f64 (+.f64 x -1) y)))
(/.f64 (-.f64 1 x) y)
(+.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) (*.f64 (-.f64 1 x) (/.f64 1/2 y)))
(/.f64 (-.f64 1 x) y)
(-.f64 (/.f64 (-.f64 1 x) y) 0)
(/.f64 (-.f64 1 x) y)
(-.f64 0 (/.f64 (+.f64 x -1) y))
(/.f64 (-.f64 1 x) y)
(*.f64 1 (/.f64 (-.f64 1 x) y))
(/.f64 (-.f64 1 x) y)
(*.f64 (-.f64 1 x) (/.f64 1 y))
(/.f64 (-.f64 1 x) y)
(*.f64 (-.f64 1 x) (*.f64 1/2 (/.f64 2 y)))
(/.f64 (-.f64 1 x) y)
(*.f64 y (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 (-.f64 1 x) y) 1)
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 2) (/.f64 1/2 y))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 2) (+.f64 (/.f64 1 (*.f64 y 4)) (/.f64 1 (*.f64 y 4))))
(/.f64 (-.f64 1 x) y)
(*.f64 2 (*.f64 (-.f64 1 x) (/.f64 1/2 y)))
(/.f64 (-.f64 1 x) y)
(*.f64 4 (/.f64 (-.f64 1 x) (*.f64 y 4)))
(/.f64 (-.f64 1 x) y)
(*.f64 4 (/.f64 (/.f64 (-.f64 1 x) y) 4))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) (/.f64 2 y)) 1/2)
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 4) (/.f64 1 (*.f64 y 4)))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 4) (*.f64 (/.f64 1 y) 1/4))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 4) (*.f64 1/2 (/.f64 1/2 y)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 y) (-.f64 1 x))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 y) (/.f64 1 (/.f64 1 (-.f64 1 x))))
(/.f64 (-.f64 1 x) y)
(*.f64 (+.f64 x -1) (/.f64 -1 y))
(*.f64 (-.f64 x 1) (/.f64 -1 y))
(*.f64 (+.f64 -1 x) (/.f64 -1 y))
(*.f64 (/.f64 y (-.f64 1 x)) (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (-.f64 1 x)) (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(/.f64 (-.f64 1 x) y)
(*.f64 -1 (/.f64 (+.f64 x -1) y))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (*.f64 (-.f64 1 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (/.f64 (-.f64 1 x) y) 4) 1/4)
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 8) (/.f64 1 (*.f64 y 8)))
(*.f64 (-.f64 1 x) (*.f64 8 (/.f64 1/8 y)))
(*.f64 (/.f64 1/8 y) (*.f64 (-.f64 1 x) 8))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))
(*.f64 (/.f64 -1/2 y) (+.f64 -2 (+.f64 x x)))
(*.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 1 (*.f64 y -2)))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))
(*.f64 (/.f64 -1/2 y) (+.f64 -2 (+.f64 x x)))
(*.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))
(*.f64 1/2 (*.f64 (-.f64 1 x) (/.f64 2 y)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (-.f64 1 x)) (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1/2 y) (*.f64 (-.f64 1 x) 2))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 2 (/.f64 1 y)) (*.f64 (-.f64 1 x) 1/2))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 (+.f64 x -1) y) -1)
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) (/.f64 1/2 y)) 2)
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1/2 (-.f64 1 x)) (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 y (/.f64 1/2 (-.f64 1 x))) (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 2 y) (*.f64 (-.f64 1 x) 1/2))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (*.f64 y 4)) (*.f64 (-.f64 1 x) 4))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 -1 y) (+.f64 x -1))
(*.f64 (-.f64 x 1) (/.f64 -1 y))
(*.f64 (+.f64 -1 x) (/.f64 -1 y))
(*.f64 1/4 (*.f64 (/.f64 (-.f64 1 x) y) 4))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (+.f64 x -1)) (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 1/2) (*.f64 2 (/.f64 1 y)))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 (-.f64 1 x) 1/2) (/.f64 2 y))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) 2))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 (-.f64 1 x) (/.f64 y (*.f64 (-.f64 1 x) 1/2))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 (-.f64 1 x) (*.f64 2 (/.f64 y (-.f64 1 x)))))
(*.f64 (*.f64 (/.f64 1 y) 1/4) (*.f64 (-.f64 1 x) 4))
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 1/2 (/.f64 2 y)) (-.f64 1 x))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (-.f64 1 x)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 (+.f64 y y) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1/2 (-.f64 1 x)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (*.f64 y (/.f64 1/2 (-.f64 1 x))))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (/.f64 1 (-.f64 1 x))) (/.f64 1 y))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 1 (-.f64 1 x)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (neg.f64 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 1 (+.f64 x -1)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 (/.f64 1 (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) y)
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 2 (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 y (-.f64 1 x)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 (-.f64 1 x) (*.f64 y 4)) 4)
(/.f64 (-.f64 1 x) y)
(*.f64 (*.f64 1/2 (/.f64 1/2 y)) (*.f64 (-.f64 1 x) 4))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))
(*.f64 (/.f64 -1/2 y) (+.f64 -2 (+.f64 x x)))
(*.f64 (/.f64 1/2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))) (/.f64 y (*.f64 (-.f64 1 x) 1/2)))
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))) (/.f64 2 (-.f64 1 x)))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 (/.f64 y (-.f64 1 x)) (*.f64 (/.f64 y (-.f64 1 x)) 2))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 y (*.f64 2 (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x))))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 (-.f64 1 x) (/.f64 y (*.f64 (-.f64 1 x) 1/2))))
(*.f64 (/.f64 2 (-.f64 1 x)) (/.f64 (-.f64 1 x) (*.f64 2 (/.f64 y (-.f64 1 x)))))
(*.f64 (/.f64 (/.f64 (-.f64 1 x) y) 4) 4)
(/.f64 (-.f64 1 x) y)
(*.f64 (/.f64 1 (*.f64 y 8)) (*.f64 (-.f64 1 x) 8))
(*.f64 (*.f64 (-.f64 1 x) 8) (/.f64 1 (*.f64 y 8)))
(*.f64 (-.f64 1 x) (*.f64 8 (/.f64 1/8 y)))
(*.f64 (/.f64 1/8 y) (*.f64 (-.f64 1 x) 8))
(*.f64 (/.f64 1 (*.f64 y -2)) (+.f64 x (+.f64 x -2)))
(*.f64 (+.f64 x (+.f64 x -2)) (/.f64 -1/2 y))
(*.f64 (/.f64 -1/2 y) (+.f64 -2 (+.f64 x x)))
(*.f64 (/.f64 -1/2 y) (+.f64 x (+.f64 x -2)))
(pow.f64 (/.f64 (-.f64 1 x) y) 1)
(/.f64 (-.f64 1 x) y)
(neg.f64 (/.f64 (+.f64 x -1) y))
(/.f64 (-.f64 1 x) y)
(neg.f64 (/.f64 (/.f64 y (+.f64 x -1)) (*.f64 (/.f64 y (-.f64 1 x)) (/.f64 y (-.f64 1 x)))))
(/.f64 (-.f64 1 x) y)

localize6.0ms (0.1%)

Compiler

Compiled 13 to 8 computations (38.5% saved)

localize6.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
@inf
(/.f64 y (-.f64 y -1))
0.0ms
y
@0
(/.f64 y (-.f64 y -1))
0.0ms
y
@-inf
(/.f64 y (-.f64 y -1))

rewrite221.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1508×rational.json-1
1508×rational.json-2
1508×rational.json-4
1508×rational.json-3
1500×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
14913
215313
337713
4107913
5436913
Stop Event
node limit
Counts
1 → 100
Calls
Call 1
Inputs
(/.f64 y (-.f64 y -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (/.f64 y (+.f64 y 1)) 1))))) (#(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 (/.f64 y (-.f64 -1 y)) -1/2) (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 y (+.f64 y 1)) 1) -1)))) (#(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 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 -1 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y 1) (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (+.f64 y 1)) 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 y) (/.f64 1/2 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (/.f64 y (-.f64 -1 y))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (+.f64 y 1) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 -1 y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 -1 y)) (/.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 1 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 1 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 y (*.f64 (+.f64 y 1) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 y (+.f64 y 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 y (/.f64 1/2 (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 y (*.f64 (+.f64 y 1) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y (+.f64 y 1)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -4) (/.f64 1 (*.f64 (+.f64 y 1) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 -1 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 -2 (/.f64 y (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 y 1)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (/.f64 1/2 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (*.f64 1/2 (/.f64 1 (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 -1 (-.f64 -1 y))) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 2 (/.f64 y (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 y (-.f64 -1 y))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 y 1)) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -1/2) (*.f64 2 (/.f64 1 (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -1/2) (/.f64 2 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 y (+.f64 y 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y 1) 4)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 2 (/.f64 -1 (-.f64 -1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (/.f64 2 (+.f64 y 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 1/2 (-.f64 -1 y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1/2 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 y)) (/.f64 -1 (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 y 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (-.f64 -1 y)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (+.f64 y 1) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (+.f64 y 1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y 1) -4)) (*.f64 y -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y (+.f64 y 1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 y 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (+.f64 y 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (-.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 -1 (/.f64 1 y)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (+.f64 2 (/.f64 2 y))) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))))))

simplify896.0ms (10.4%)

Algorithm
egg-herbie
Rules
1108×rational.json-simplify-2
968×rational.json-simplify-1
734×rational.json-simplify-50
698×rational.json-simplify-35
658×rational.json-simplify-51
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02102080
14502036
211022036
334801982
466681982
Stop Event
node limit
Counts
112 → 135
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 -1 (+.f64 (/.f64 y (+.f64 y 1)) 1))
(+.f64 (/.f64 y (+.f64 y 1)) 0)
(+.f64 0 (/.f64 y (+.f64 y 1)))
(+.f64 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2) (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))
(+.f64 (+.f64 (/.f64 y (+.f64 y 1)) 1) -1)
(-.f64 (/.f64 y (+.f64 y 1)) 0)
(-.f64 0 (/.f64 y (-.f64 -1 y)))
(*.f64 y (/.f64 -1 (-.f64 -1 y)))
(*.f64 y (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))))
(*.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 -1 (/.f64 y (-.f64 -1 y)))
(*.f64 -1 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 y (+.f64 y 1)) 1)
(*.f64 1 (/.f64 y (+.f64 y 1)))
(*.f64 (+.f64 y y) (/.f64 1/2 (+.f64 y 1)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2))
(*.f64 (neg.f64 y) (/.f64 1 (-.f64 -1 y)))
(*.f64 (neg.f64 y) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))))
(*.f64 2 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))
(*.f64 (*.f64 -2 (/.f64 y (-.f64 -1 y))) 1/2)
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (+.f64 y 1) 4)))
(*.f64 (*.f64 y 4) (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))
(*.f64 (/.f64 -1 (-.f64 -1 y)) y)
(*.f64 (/.f64 -1 (-.f64 -1 y)) (/.f64 1 (/.f64 1 y)))
(*.f64 (+.f64 1 (/.f64 1 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (+.f64 1 (/.f64 1 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 (/.f64 1 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 1 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 4 (/.f64 y (*.f64 (+.f64 y 1) 4)))
(*.f64 4 (/.f64 (/.f64 y (+.f64 y 1)) 4))
(*.f64 -2 (*.f64 y (/.f64 1/2 (-.f64 -1 y))))
(*.f64 -2 (/.f64 y (*.f64 (+.f64 y 1) -2)))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) 4) 1/4)
(*.f64 (*.f64 y 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))
(*.f64 (*.f64 y -4) (/.f64 1 (*.f64 (+.f64 y 1) -4)))
(*.f64 (*.f64 y -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))
(*.f64 (/.f64 y (-.f64 -1 y)) -1)
(*.f64 1/2 (*.f64 -2 (/.f64 y (-.f64 -1 y))))
(*.f64 (/.f64 1/2 (+.f64 y 1)) (+.f64 y y))
(*.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 y))
(*.f64 (*.f64 y -2) (/.f64 1/2 (-.f64 -1 y)))
(*.f64 (*.f64 y -2) (*.f64 1/2 (/.f64 1 (-.f64 -1 y))))
(*.f64 (*.f64 y -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))
(*.f64 (*.f64 y -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))
(*.f64 (*.f64 2 (/.f64 -1 (-.f64 -1 y))) (*.f64 y 1/2))
(*.f64 (*.f64 2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -1/2))
(*.f64 -1/2 (*.f64 2 (/.f64 y (-.f64 -1 y))))
(*.f64 (*.f64 2 (/.f64 y (-.f64 -1 y))) -1/2)
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 1/2 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 2 (+.f64 y 1)) (*.f64 y 1/2))
(*.f64 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2) 2)
(*.f64 (*.f64 y -1/2) (*.f64 2 (/.f64 1 (-.f64 -1 y))))
(*.f64 (*.f64 y -1/2) (/.f64 2 (-.f64 -1 y)))
(*.f64 (/.f64 2 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 1/4 (*.f64 (/.f64 y (+.f64 y 1)) 4))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 4)) (*.f64 y 4))
(*.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 y -2))
(*.f64 (*.f64 y 1/2) (*.f64 2 (/.f64 -1 (-.f64 -1 y))))
(*.f64 (*.f64 y 1/2) (/.f64 2 (+.f64 y 1)))
(*.f64 (*.f64 y (/.f64 1/2 (-.f64 -1 y))) -2)
(*.f64 (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4) (*.f64 y 4))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))) y)
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) y)
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))) (neg.f64 y))
(*.f64 (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2) (+.f64 y y))
(*.f64 (*.f64 1/2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -2))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1 (/.f64 1 y)))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1/2 y))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1/2 (/.f64 1/2 y)))
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 -1 (-.f64 -1 y)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1 y))
(*.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 -1 y))
(*.f64 (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 2 (/.f64 2 y)))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 1 y))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 1 (/.f64 1 y)))
(*.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)
(*.f64 (/.f64 2 (-.f64 -1 y)) (*.f64 y -1/2))
(*.f64 (/.f64 y (*.f64 (+.f64 y 1) -2)) -2)
(*.f64 (/.f64 y (*.f64 (+.f64 y 1) 4)) 4)
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 y 4))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) -4)) (*.f64 y -4))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 2 (/.f64 2 y)))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 2 y))
(*.f64 (/.f64 (/.f64 y (+.f64 y 1)) 4) 4)
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 y 8))
(*.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -4))
(*.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -2))
(*.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 y -2))
(pow.f64 (/.f64 y (+.f64 y 1)) 1)
(neg.f64 (/.f64 y (-.f64 -1 y)))
(neg.f64 (/.f64 (-.f64 -1 (/.f64 1 y)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(neg.f64 (/.f64 (neg.f64 (+.f64 2 (/.f64 2 y))) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(neg.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))
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 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (+.f64 y (*.f64 -1 (pow.f64 y 4)))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 y (+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 y 3))))
(+.f64 y (+.f64 (+.f64 (pow.f64 y 3) (neg.f64 (pow.f64 y 4))) (neg.f64 (pow.f64 y 2))))
(+.f64 (neg.f64 (pow.f64 y 2)) (+.f64 y (+.f64 (pow.f64 y 3) (neg.f64 (pow.f64 y 4)))))
(+.f64 (pow.f64 y 3) (+.f64 y (*.f64 -1 (+.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 1 (-.f64 (/.f64 1 (pow.f64 y 2)) (/.f64 1 y)))
(+.f64 (/.f64 1 (pow.f64 y 2)) (-.f64 1 (/.f64 1 y)))
(+.f64 (-.f64 1 (/.f64 1 y)) (/.f64 1 (pow.f64 y 2)))
(-.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 1 (pow.f64 y 2)) (-.f64 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 1 (-.f64 (/.f64 1 (pow.f64 y 2)) (/.f64 1 y)))
(+.f64 (/.f64 1 (pow.f64 y 2)) (-.f64 1 (/.f64 1 y)))
(+.f64 (-.f64 1 (/.f64 1 y)) (/.f64 1 (pow.f64 y 2)))
(-.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 1 (pow.f64 y 2)) (-.f64 1 (+.f64 (/.f64 1 y) (/.f64 1 (pow.f64 y 3)))))
(+.f64 -1 (+.f64 (/.f64 y (+.f64 y 1)) 1))
(/.f64 y (+.f64 y 1))
(+.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 (/.f64 y (-.f64 -1 y)) -1/2) (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))
(/.f64 y (+.f64 y 1))
(+.f64 (+.f64 (/.f64 y (+.f64 y 1)) 1) -1)
(/.f64 y (+.f64 y 1))
(-.f64 (/.f64 y (+.f64 y 1)) 0)
(/.f64 y (+.f64 y 1))
(-.f64 0 (/.f64 y (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 y (/.f64 -1 (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 y (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 y (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 -1 (/.f64 y (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 -1 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 y 1) (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (+.f64 y 1)) 1)
(/.f64 y (+.f64 y 1))
(*.f64 1 (/.f64 y (+.f64 y 1)))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 y y) (/.f64 1/2 (+.f64 y 1)))
(*.f64 (+.f64 y y) (/.f64 -1/2 (-.f64 -1 y)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2))
(/.f64 y (+.f64 y 1))
(*.f64 (neg.f64 y) (/.f64 1 (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (neg.f64 y) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 2 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 -2 (/.f64 y (-.f64 -1 y))) 1/2)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (+.f64 y 1) 4)))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 4) (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))))
(*.f64 (+.f64 y y) (/.f64 1/2 (+.f64 y 1)))
(*.f64 (+.f64 y y) (/.f64 -1/2 (-.f64 -1 y)))
(*.f64 (/.f64 -1 (-.f64 -1 y)) y)
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 -1 (-.f64 -1 y)) (/.f64 1 (/.f64 1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 1 (/.f64 1 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 1 (/.f64 1 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 2 (/.f64 2 y)) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 4 (/.f64 y (*.f64 (+.f64 y 1) 4)))
(/.f64 y (+.f64 y 1))
(*.f64 4 (/.f64 (/.f64 y (+.f64 y 1)) 4))
(/.f64 y (+.f64 y 1))
(*.f64 -2 (*.f64 y (/.f64 1/2 (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 -2 (/.f64 y (*.f64 (+.f64 y 1) -2)))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 y (+.f64 y 1)) 4) 1/4)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))
(*.f64 8 (*.f64 (/.f64 1/8 (+.f64 y 1)) y))
(*.f64 y (*.f64 8 (/.f64 -1/8 (-.f64 -1 y))))
(*.f64 (*.f64 y -4) (/.f64 1 (*.f64 (+.f64 y 1) -4)))
(*.f64 y (*.f64 -4 (/.f64 1 (*.f64 (+.f64 y 1) -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (+.f64 y 1))))
(*.f64 -4 (*.f64 y (/.f64 1/4 (-.f64 -1 y))))
(*.f64 (*.f64 y -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))
(*.f64 y (*.f64 -4 (/.f64 1 (*.f64 (+.f64 y 1) -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (+.f64 y 1))))
(*.f64 -4 (*.f64 y (/.f64 1/4 (-.f64 -1 y))))
(*.f64 (/.f64 y (-.f64 -1 y)) -1)
(/.f64 y (+.f64 y 1))
(*.f64 1/2 (*.f64 -2 (/.f64 y (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1/2 (+.f64 y 1)) (+.f64 y y))
(*.f64 (+.f64 y y) (/.f64 1/2 (+.f64 y 1)))
(*.f64 (+.f64 y y) (/.f64 -1/2 (-.f64 -1 y)))
(*.f64 (/.f64 1 (-.f64 -1 y)) (neg.f64 y))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -2) (/.f64 1/2 (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -2) (*.f64 1/2 (/.f64 1 (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -2) (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 2 (/.f64 -1 (-.f64 -1 y))) (*.f64 y 1/2))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -1/2))
(/.f64 y (+.f64 y 1))
(*.f64 -1/2 (*.f64 2 (/.f64 y (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 2 (/.f64 y (-.f64 -1 y))) -1/2)
(/.f64 y (+.f64 y 1))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 (/.f64 -2 (-.f64 -1 (/.f64 1 y))) (+.f64 1 (/.f64 1 y))))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 8 (*.f64 (+.f64 2 (/.f64 2 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 (/.f64 1/2 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 1/2 y) (/.f64 (+.f64 2 (+.f64 y y)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 -1 y))
(/.f64 (/.f64 y (-.f64 -1 (/.f64 1 y))) (neg.f64 y))
(*.f64 (/.f64 2 (+.f64 y 1)) (*.f64 y 1/2))
(*.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 y (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (*.f64 (/.f64 y (-.f64 -1 y)) -1/2) 2)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -1/2) (*.f64 2 (/.f64 1 (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y -1/2) (/.f64 2 (-.f64 -1 y)))
(*.f64 y (*.f64 -1/2 (/.f64 -2 (-.f64 y -1))))
(*.f64 y (*.f64 -1/2 (/.f64 2 (-.f64 -1 y))))
(*.f64 (/.f64 2 y) (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(/.f64 y (+.f64 y 1))
(*.f64 1/4 (*.f64 (/.f64 y (+.f64 y 1)) 4))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 4)) (*.f64 y 4))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1/2 (-.f64 -1 y)) (*.f64 y -2))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 1/2) (*.f64 2 (/.f64 -1 (-.f64 -1 y))))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 y 1/2) (/.f64 2 (+.f64 y 1)))
(*.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 y (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (*.f64 y (/.f64 1/2 (-.f64 -1 y))) -2)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 -1 (-.f64 -1 y)) 1/4) (*.f64 y 4))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 -1 y)))) y)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 y 1))) y)
(*.f64 y (*.f64 1/2 (/.f64 2 (+.f64 y 1))))
(*.f64 y (*.f64 1/2 (/.f64 -2 (-.f64 -1 y))))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 -1 y)))) (neg.f64 y))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 (/.f64 1 (-.f64 -1 y)) -1/2) (+.f64 y y))
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 1/2 (/.f64 1 (-.f64 -1 y))) (*.f64 y -2))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1 (/.f64 1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1/2 y))
(*.f64 (/.f64 1/2 y) (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 1/2 y) (/.f64 (+.f64 2 (+.f64 y y)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 1/2 (/.f64 1/2 y)))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 (/.f64 -2 (-.f64 -1 (/.f64 1 y))) (+.f64 1 (/.f64 1 y))))
(*.f64 (+.f64 1/2 (/.f64 1/2 y)) (/.f64 8 (*.f64 (+.f64 2 (/.f64 2 y)) (+.f64 2 (/.f64 2 y)))))
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 -1 (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 1 y))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (/.f64 -1 y))
(*.f64 (/.f64 -1 y) (/.f64 (-.f64 -1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 (/.f64 y (-.f64 -1 (/.f64 1 y))) (neg.f64 y))
(*.f64 (/.f64 (/.f64 1 y) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 y 1))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 2 (/.f64 2 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (+.f64 y (+.f64 y 2)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 1 y))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (+.f64 1 (/.f64 1 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))) -1)
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 2 (-.f64 -1 y)) (*.f64 y -1/2))
(*.f64 y (*.f64 -1/2 (/.f64 -2 (-.f64 y -1))))
(*.f64 y (*.f64 -1/2 (/.f64 2 (-.f64 -1 y))))
(*.f64 (/.f64 y (*.f64 (+.f64 y 1) -2)) -2)
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 y (*.f64 (+.f64 y 1) 4)) 4)
(/.f64 y (+.f64 y 1))
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 y 1))) (*.f64 y 4))
(*.f64 (+.f64 y y) (/.f64 1/2 (+.f64 y 1)))
(*.f64 (+.f64 y y) (/.f64 -1/2 (-.f64 -1 y)))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) -4)) (*.f64 y -4))
(*.f64 y (*.f64 -4 (/.f64 1 (*.f64 (+.f64 y 1) -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (+.f64 y 1))))
(*.f64 -4 (*.f64 y (/.f64 1/4 (-.f64 -1 y))))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))) (+.f64 2 (/.f64 2 y)))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (+.f64 y 1) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))) (/.f64 2 y))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 (/.f64 y (+.f64 y 1)) 4) 4)
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (*.f64 (+.f64 y 1) 8)) (*.f64 y 8))
(*.f64 (*.f64 y 8) (/.f64 1 (*.f64 (+.f64 y 1) 8)))
(*.f64 8 (*.f64 (/.f64 1/8 (+.f64 y 1)) y))
(*.f64 y (*.f64 8 (/.f64 -1/8 (-.f64 -1 y))))
(*.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -4))
(*.f64 y (*.f64 -4 (/.f64 1 (*.f64 (+.f64 y 1) -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (+.f64 y 1))))
(*.f64 -4 (*.f64 y (/.f64 1/4 (-.f64 -1 y))))
(*.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 y (+.f64 y 2))))) (*.f64 y -2))
(/.f64 y (+.f64 y 1))
(*.f64 (/.f64 1 (neg.f64 (+.f64 y (+.f64 y 2)))) (*.f64 y -2))
(/.f64 y (+.f64 y 1))
(pow.f64 (/.f64 y (+.f64 y 1)) 1)
(/.f64 y (+.f64 y 1))
(neg.f64 (/.f64 y (-.f64 -1 y)))
(/.f64 y (+.f64 y 1))
(neg.f64 (/.f64 (-.f64 -1 (/.f64 1 y)) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 1 (/.f64 1 y)))))
(/.f64 y (+.f64 y 1))
(neg.f64 (/.f64 (neg.f64 (+.f64 2 (/.f64 2 y))) (*.f64 (+.f64 1 (/.f64 1 y)) (+.f64 2 (/.f64 2 y)))))
(/.f64 y (+.f64 y 1))
(neg.f64 (/.f64 (+.f64 y y) (neg.f64 (+.f64 y (+.f64 y 2)))))
(/.f64 y (+.f64 y 1))

eval147.0ms (1.7%)

Compiler

Compiled 2782 to 2146 computations (22.9% saved)

prune640.0ms (7.4%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New2172219
Fresh022
Picked011
Done123
Total2187225
Error
0b
Counts
225 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.1b
(/.f64 y (-.f64 y -1))
32.4b
(/.f64 x (-.f64 y -1))
30.9b
(-.f64 1 (neg.f64 (/.f64 x y)))
56.4b
y
38.3b
x
36.2b
1
Compiler

Compiled 40 to 29 computations (27.5% saved)

localize6.0ms (0.1%)

Compiler

Compiled 18 to 7 computations (61.1% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune2.0ms (0%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done033
Total077
Error
0b
Counts
7 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.1b
(/.f64 y (-.f64 y -1))
32.4b
(/.f64 x (-.f64 y -1))
30.9b
(-.f64 1 (neg.f64 (/.f64 x y)))
56.4b
y
38.3b
x
36.2b
1
Compiler

Compiled 40 to 29 computations (27.5% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune2.0ms (0%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New000
Fresh033
Picked000
Done044
Total077
Error
0b
Counts
7 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (+.f64 y 1))
30.1b
(/.f64 y (-.f64 y -1))
32.4b
(/.f64 x (-.f64 y -1))
30.9b
(-.f64 1 (neg.f64 (/.f64 x y)))
56.4b
y
38.3b
x
36.2b
1
Compiler

Compiled 40 to 29 computations (27.5% saved)

regimes19.0ms (0.2%)

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

3 calls:

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

Compiled 50 to 32 computations (36% saved)

regimes181.0ms (2.1%)

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

2 calls:

160.0ms
y
19.0ms
x
Results
ErrorSegmentsBranch
13.2b3x
5.2b5y
Compiler

Compiled 34 to 22 computations (35.3% saved)

bsearch307.0ms (3.6%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
193070.51875025028
6709567.930097704
14.0ms
1.8196478156015238e-82
1.607797807199921e-76
15.0ms
1.1386260581306182e-108
4.118339480443978e-103
264.0ms
-3056.5161376010133
-802.7788688684045
Results
299.0ms480×body256valid
Compiler

Compiled 446 to 340 computations (23.8% saved)

regimes595.0ms (6.9%)

Counts
6 → 5
Calls
Call 1
Inputs
1
x
y
(/.f64 x (-.f64 y -1))
(/.f64 y (-.f64 y -1))
(-.f64 1 (neg.f64 (/.f64 x y)))
Outputs
(-.f64 1 (neg.f64 (/.f64 x y)))
(/.f64 x (-.f64 y -1))
y
(/.f64 x (-.f64 y -1))
(-.f64 1 (neg.f64 (/.f64 x y)))
Calls

2 calls:

367.0ms
y
226.0ms
x
Results
ErrorSegmentsBranch
13.2b3x
5.6b5y
Compiler

Compiled 27 to 17 computations (37% saved)

bsearch473.0ms (5.5%)

Algorithm
binary-search
Steps
TimeLeftRight
11.0ms
193070.51875025028
6709567.930097704
14.0ms
1.8196478156015238e-82
1.607797807199921e-76
442.0ms
1.1386260581306182e-108
4.118339480443978e-103
7.0ms
-127799613.98998253
-71123776.10262841
Results
40.0ms464×body256valid
Compiler

Compiled 417 to 315 computations (24.5% saved)

regimes695.0ms (8.1%)

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

2 calls:

453.0ms
x
241.0ms
y
Results
ErrorSegmentsBranch
13.2b3x
10.0b5y
Compiler

Compiled 21 to 13 computations (38.1% saved)

bsearch167.0ms (1.9%)

Algorithm
binary-search
Steps
TimeLeftRight
12.0ms
1.379534604370728e-60
3.886326716436704e-57
124.0ms
1.8196478156015238e-82
1.607797807199921e-76
15.0ms
1.1386260581306182e-108
4.118339480443978e-103
16.0ms
-5.9441480706508626e+22
-472631659861347000.0
Results
159.0ms560×body256valid
Compiler

Compiled 398 to 307 computations (22.9% saved)

regimes956.0ms (11.1%)

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

2 calls:

21.0ms
x
18.0ms
y
Results
ErrorSegmentsBranch
18.3b5x
10.5b5y
Compiler

Compiled 16 to 10 computations (37.5% saved)

bsearch145.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
11.0ms
193070.51875025028
6709567.930097704
104.0ms
1.8196478156015238e-82
1.607797807199921e-76
15.0ms
1.1386260581306182e-108
4.118339480443978e-103
15.0ms
-5.9441480706508626e+22
-472631659861347000.0
Results
139.0ms544×body256valid
Compiler

Compiled 422 to 332 computations (21.3% saved)

regimes130.0ms (1.5%)

Counts
3 → 5
Calls
Call 1
Inputs
1
x
y
Outputs
1
x
y
x
1
Calls

2 calls:

111.0ms
y
18.0ms
x
Results
ErrorSegmentsBranch
24.5b5x
11.8b5y
Compiler

Compiled 11 to 7 computations (36.4% saved)

bsearch58.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
12.0ms
193070.51875025028
6709567.930097704
15.0ms
1.8196478156015238e-82
1.607797807199921e-76
15.0ms
1.1386260581306182e-108
4.118339480443978e-103
16.0ms
-13.122542100298864
-2.302881653171406e-10
Results
52.0ms560×body256valid
0.0msbody256infinite
Compiler

Compiled 294 to 237 computations (19.4% saved)

regimes22.0ms (0.3%)

Accuracy

Total -48.6b remaining (-373.4%)

Threshold costs -48.6b (-373.4%)

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

2 calls:

11.0ms
x
10.0ms
y
Results
ErrorSegmentsBranch
25.7b3x
13.0b3y
Compiler

Compiled 10 to 7 computations (30% saved)

bsearch30.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
193070.51875025028
6709567.930097704
17.0ms
-13.122542100298864
-2.302881653171406e-10
Results
25.0ms272×body256valid
Compiler

Compiled 150 to 129 computations (14% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074410
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(if (<=.f64 y -1700) (-.f64 1 (/.f64 (-.f64 1 x) y)) (if (<=.f64 y 1891296297426935/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6841833474434165/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192) y (if (<=.f64 y 460000) (/.f64 x (-.f64 y -1)) (-.f64 1 (/.f64 (-.f64 1 x) y))))))
(if (<=.f64 y -72000000) (-.f64 1 (neg.f64 (/.f64 x y))) (if (<=.f64 y 1891296297426935/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 1922388332328819/8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304) y (if (<=.f64 y 390000) (/.f64 x (-.f64 y -1)) (-.f64 1 (neg.f64 (/.f64 x y)))))))
(if (<=.f64 y -3150000000000000000) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6664279552073239/34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216) y (if (<=.f64 y 795081179150273/220855883097298041197912187592864814478435487109452369765200775161577472) x (/.f64 y (-.f64 y -1))))))
(if (<=.f64 y -520000000000000000) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6664279552073239/34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216) y (if (<=.f64 y 720000) (/.f64 x (-.f64 y -1)) 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) x (if (<=.f64 y 3161260813162947/17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608) y (if (<=.f64 y 195000) x 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 195000) x 1))
1
Outputs
(/.f64 (+.f64 x y) (+.f64 y 1))
(if (<=.f64 y -1700) (-.f64 1 (/.f64 (-.f64 1 x) y)) (if (<=.f64 y 1891296297426935/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6841833474434165/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192) y (if (<=.f64 y 460000) (/.f64 x (-.f64 y -1)) (-.f64 1 (/.f64 (-.f64 1 x) y))))))
(if (<=.f64 y -72000000) (-.f64 1 (neg.f64 (/.f64 x y))) (if (<=.f64 y 1891296297426935/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 1922388332328819/8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304) y (if (<=.f64 y 390000) (/.f64 x (-.f64 y -1)) (-.f64 1 (neg.f64 (/.f64 x y)))))))
(if (<=.f64 y -3150000000000000000) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6664279552073239/34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216) y (if (<=.f64 y 795081179150273/220855883097298041197912187592864814478435487109452369765200775161577472) x (/.f64 y (-.f64 y -1))))))
(if (<=.f64 y -520000000000000000) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (/.f64 x (-.f64 y -1)) (if (<=.f64 y 6664279552073239/34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216) y (if (<=.f64 y 720000) (/.f64 x (-.f64 y -1)) 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 8271269140747129/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) x (if (<=.f64 y 3161260813162947/17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608) y (if (<=.f64 y 195000) x 1))))
(if (<=.f64 y -1) 1 (if (<=.f64 y 195000) x 1))
1
Compiler

Compiled 194 to 134 computations (30.9% saved)

soundness0.0ms (0%)

end88.0ms (1%)

Compiler

Compiled 180 to 120 computations (33.3% saved)

Profiling

Loading profile data...