Time bar (total: 12.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 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 |
| 18.8% | 18.7% | 81.2% | 0.1% | 0% | 0% | 0% | 5 |
| 28.1% | 28.1% | 71.8% | 0.1% | 0% | 0% | 0% | 6 |
| 39.1% | 39% | 60.9% | 0.1% | 0% | 0% | 0% | 7 |
| 52.3% | 52.3% | 47.6% | 0.1% | 0% | 0% | 0% | 8 |
| 67.6% | 67.5% | 32.4% | 0.1% | 0% | 0% | 0% | 9 |
| 74.8% | 74.7% | 25.2% | 0.1% | 0% | 0% | 0% | 10 |
| 83.3% | 83.2% | 16.7% | 0.1% | 0% | 0% | 0% | 11 |
| 87.1% | 87% | 12.9% | 0.1% | 0% | 0% | 0% | 12 |
Compiled 12 to 8 computations (33.3% saved)
| 2.6s | 8254× | body | 256 | valid |
| 0.0ms | 1× | body | 1024 | valid |
| 0.0ms | 1× | body | 512 | valid |
| 2× | egg-herbie |
| 4× | rational.json-simplify-46 |
| 2× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 50 |
| 1 | 18 | 50 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 y x) (-.f64 2 (+.f64 y x))) |
| Outputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 y x) (-.f64 2 (+.f64 y x))) |
(/.f64 (-.f64 y x) (-.f64 2 (+.f64 x y))) |
Compiled 13 to 9 computations (30.8% saved)
| 1× | egg-herbie |
| 2× | rational.json-simplify-1 |
| 2× | rational.json-simplify-42 |
| 2× | rational.json-simplify-46 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 25 |
| 1 | 12 | 25 |
| 2 | 14 | 25 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
| Outputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
Compiled 20 to 11 computations (45% saved)
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 1 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
Compiled 11 to 7 computations (36.4% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 (-.f64 2 x) y) |
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
Compiled 25 to 13 computations (48% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | 0 | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| 1.0ms | x | @ | 0 | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| 1.0ms | y | @ | -inf | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| 1.0ms | y | @ | inf | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| 1.0ms | x | @ | inf | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| 1× | batch-egg-rewrite |
| 1816× | rational.json-5 |
| 1814× | exponential.json-3 |
| 1814× | rational.json-1 |
| 1814× | rational.json-2 |
| 1814× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 38 |
| 1 | 77 | 38 |
| 2 | 269 | 38 |
| 3 | 965 | 38 |
| 4 | 3584 | 38 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
(-.f64 (-.f64 2 x) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 2 x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (-.f64 2 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 y 2)) (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 x 2)) (-.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (+.f64 y (-.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 y) (-.f64 1 (-.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 x) (-.f64 1 (-.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 2 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (-.f64 2 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (-.f64 x 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (/.f64 1 (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) (/.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 2 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (-.f64 x 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (-.f64 2 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 y (-.f64 x 2))))))) |
| 1× | egg-herbie |
| 1448× | rational.json-simplify-49 |
| 1356× | rational.json-simplify-2 |
| 1110× | rational.json-simplify-50 |
| 870× | rational.json-simplify-58 |
| 848× | rational.json-simplify-54 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 175 | 2833 |
| 1 | 336 | 2707 |
| 2 | 649 | 2661 |
| 3 | 2166 | 2617 |
| 4 | 6433 | 2603 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (/.f64 y (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y)))) |
(+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 2)) (+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y))))) |
-1 |
(-.f64 (*.f64 2 (/.f64 y x)) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (*.f64 2 (/.f64 y x))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (pow.f64 (-.f64 2 y) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
-1 |
(-.f64 (*.f64 2 (/.f64 y x)) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (*.f64 2 (/.f64 y x))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (pow.f64 (-.f64 2 y) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(/.f64 x (-.f64 2 x)) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))) (+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y)))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))) (+.f64 (/.f64 x (-.f64 2 x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3))))) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y))))) |
1 |
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x y))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 1 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x))) (-.f64 2 x)) (pow.f64 y 2)) (*.f64 -1 (/.f64 x y)))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x)))) (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x y)) (/.f64 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x))) (pow.f64 (-.f64 2 x) 2)) (pow.f64 y 3))))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y))) |
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (-.f64 2 x)) (pow.f64 y 2))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (pow.f64 (-.f64 2 x) 2)) (pow.f64 y 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (-.f64 2 x)) (pow.f64 y 2)))))) |
(-.f64 2 y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(*.f64 -1 x) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(*.f64 -1 x) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 2 x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(*.f64 -1 y) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(*.f64 -1 y) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(+.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0) |
(+.f64 0 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) |
(-.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(*.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) 1)) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))))) |
(pow.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1) |
(+.f64 (-.f64 (-.f64 2 x) y) 0) |
(+.f64 0 (-.f64 (-.f64 2 x) y)) |
(+.f64 (-.f64 -1 (-.f64 y 2)) (-.f64 1 x)) |
(+.f64 (-.f64 -1 (-.f64 x 2)) (-.f64 1 y)) |
(+.f64 (-.f64 -1 (+.f64 y (-.f64 x 2))) 1) |
(+.f64 (-.f64 -1 y) (-.f64 1 (-.f64 x 2))) |
(+.f64 (-.f64 -1 x) (-.f64 1 (-.f64 y 2))) |
(*.f64 (-.f64 (-.f64 2 x) y) 1) |
(*.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(*.f64 1 (-.f64 (-.f64 2 x) y)) |
(*.f64 (+.f64 y (-.f64 x 2)) -1) |
(*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (/.f64 1 (-.f64 (-.f64 2 x) y))) |
(*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) 1)) |
(*.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(*.f64 (*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) (/.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)))) |
(/.f64 (-.f64 (-.f64 2 x) y) 1) |
(/.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(/.f64 (+.f64 y (-.f64 x 2)) -1) |
(pow.f64 (-.f64 (-.f64 2 x) y) 1) |
(neg.f64 (+.f64 y (-.f64 x 2))) |
| Outputs |
|---|
(*.f64 -1 (/.f64 y (-.f64 2 y))) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x)) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y)))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y)))) |
(+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y)))) |
(+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 2)) (+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y))))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (+.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y))) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 2)))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (+.f64 (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y))) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 2)))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 2)) (-.f64 2 y)) (+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) x) (/.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 2 y)) (/.f64 y (pow.f64 (-.f64 2 y) 2))) (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 2))))) |
-1 |
(-.f64 (*.f64 2 (/.f64 y x)) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(+.f64 (*.f64 2 (-.f64 (/.f64 y x) (/.f64 1 x))) -1) |
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (*.f64 2 (/.f64 y x))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 -1 (-.f64 (*.f64 2 (/.f64 1 x)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2))))) |
(-.f64 -1 (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)))) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) -1)) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (+.f64 1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (pow.f64 (-.f64 2 y) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (*.f64 2 (/.f64 y x)) (+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 -1 (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3))))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3))) (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) -1)) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (-.f64 (+.f64 1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)))) |
-1 |
(-.f64 (*.f64 2 (/.f64 y x)) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(+.f64 (*.f64 2 (-.f64 (/.f64 y x) (/.f64 1 x))) -1) |
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (*.f64 2 (/.f64 y x))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 -1 (-.f64 (*.f64 2 (/.f64 1 x)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2))))) |
(-.f64 -1 (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)))) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) -1)) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (+.f64 1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (-.f64 2 y)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (-.f64 (*.f64 2 y) 2) (pow.f64 (-.f64 2 y) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (*.f64 2 (/.f64 y x)) (+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)) (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (+.f64 (*.f64 2 (/.f64 y x)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)))) (+.f64 1 (*.f64 2 (/.f64 1 x)))) |
(-.f64 -1 (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3))))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3))) (-.f64 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x))) -1)) |
(-.f64 (/.f64 (*.f64 (-.f64 2 y) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 2)) (-.f64 (+.f64 1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) (/.f64 (*.f64 (pow.f64 (-.f64 2 y) 2) (-.f64 (*.f64 y 2) 2)) (pow.f64 x 3)))) |
(/.f64 x (-.f64 2 x)) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 -1 y))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (neg.f64 y))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 y (neg.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))) (+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y)))) |
(+.f64 (/.f64 x (-.f64 2 x)) (+.f64 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 -1 y)) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (neg.f64 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))) (+.f64 (/.f64 x (-.f64 2 x)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3))))) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) y))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (+.f64 (+.f64 (*.f64 (+.f64 (/.f64 1 (-.f64 2 x)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 -1 y)) (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3)))))) (*.f64 -1 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (*.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
(+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (neg.f64 (pow.f64 y 2))) (+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3)))) (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (pow.f64 y 3) (+.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3)))))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (*.f64 -1 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3)))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)))))) |
(+.f64 (/.f64 x (-.f64 2 x)) (neg.f64 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) (*.f64 (pow.f64 y 3) (+.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 4))) (/.f64 1 (pow.f64 (-.f64 2 x) 3)))))))) |
1 |
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 x y))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 1 (neg.f64 (/.f64 x y))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(+.f64 1 (*.f64 -1 (-.f64 (/.f64 x y) (/.f64 (-.f64 2 x) y)))) |
(-.f64 (-.f64 1 (/.f64 x y)) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (/.f64 (-.f64 2 x) y) (+.f64 -1 (/.f64 x y))) |
(-.f64 (+.f64 1 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x))) (-.f64 2 x)) (pow.f64 y 2)) (*.f64 -1 (/.f64 x y)))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x)))) (pow.f64 y 2)) (+.f64 1 (*.f64 -1 (/.f64 x y)))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 1 (+.f64 (neg.f64 (/.f64 x y)) (/.f64 (*.f64 (-.f64 2 x) (*.f64 -1 (-.f64 x (-.f64 2 x)))) (pow.f64 y 2)))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 (neg.f64 (/.f64 x y)) (/.f64 (*.f64 -1 (*.f64 (-.f64 x (-.f64 2 x)) (-.f64 2 x))) (pow.f64 y 2))) (+.f64 -1 (neg.f64 (/.f64 (-.f64 2 x) y)))) |
(-.f64 (+.f64 (-.f64 1 (/.f64 x y)) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (-.f64 2 x) x)) (pow.f64 y 2))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (/.f64 (-.f64 2 x) y) (-.f64 (+.f64 -1 (/.f64 x y)) (/.f64 (*.f64 (-.f64 2 x) (-.f64 2 (+.f64 x x))) (pow.f64 y 2)))) |
(-.f64 (+.f64 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x)))) (pow.f64 y 2)) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 x y)) (/.f64 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x))) (pow.f64 (-.f64 2 x) 2)) (pow.f64 y 3))))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 1 (+.f64 (+.f64 (*.f64 -1 (/.f64 x y)) (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x)))) (pow.f64 y 3))) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 -1 x) (*.f64 -1 (-.f64 2 x)))) (pow.f64 y 2)))) (*.f64 -1 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 1 (+.f64 (/.f64 (*.f64 (-.f64 2 x) (*.f64 -1 (-.f64 x (-.f64 2 x)))) (pow.f64 y 2)) (+.f64 (neg.f64 (/.f64 x y)) (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (*.f64 -1 (-.f64 x (-.f64 2 x)))) (pow.f64 y 3))))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 (neg.f64 (/.f64 x y)) (+.f64 (/.f64 (*.f64 -1 (*.f64 (-.f64 x (-.f64 2 x)) (-.f64 2 x))) (pow.f64 y 2)) (+.f64 1 (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (*.f64 -1 (-.f64 x (-.f64 2 x)))) (pow.f64 y 3))))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (+.f64 (-.f64 1 (/.f64 x y)) (+.f64 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (-.f64 2 x) x)) (pow.f64 y 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (-.f64 2 x) x)) (pow.f64 y 3)))) (neg.f64 (/.f64 (-.f64 2 x) y))) |
(-.f64 (/.f64 (-.f64 2 x) y) (-.f64 (-.f64 (+.f64 -1 (/.f64 x y)) (/.f64 (*.f64 (-.f64 2 x) (-.f64 2 (+.f64 x x))) (pow.f64 y 2))) (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 2 (+.f64 x x))) (pow.f64 y 3)))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y))) |
(+.f64 1 (neg.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y))) |
(-.f64 1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) |
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (-.f64 2 x)) (pow.f64 y 2))))) |
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2))))) |
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2))))) |
(+.f64 (neg.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (-.f64 1 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (pow.f64 (-.f64 2 x) 2)) (pow.f64 y 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 2 x) 2) (-.f64 2 x)) (pow.f64 y 2)))))) |
(+.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) (*.f64 -1 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 3)))) |
(+.f64 (*.f64 -1 (+.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2)))) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 3))) 1)) |
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 3)) (+.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2)))))) |
(+.f64 (neg.f64 (+.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y) (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2)))) (-.f64 1 (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 3)))) |
(+.f64 1 (neg.f64 (+.f64 (/.f64 (-.f64 (*.f64 2 x) 2) y) (+.f64 (/.f64 (*.f64 (-.f64 2 x) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 2)) (/.f64 (*.f64 (pow.f64 (-.f64 2 x) 2) (-.f64 (*.f64 2 x) 2)) (pow.f64 y 3)))))) |
(-.f64 2 y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(*.f64 -1 x) |
(neg.f64 x) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(*.f64 -1 x) |
(neg.f64 x) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 (+.f64 2 (*.f64 -1 x)) y) |
(-.f64 (+.f64 2 (neg.f64 x)) y) |
(-.f64 2 x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(*.f64 -1 y) |
(neg.f64 y) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(*.f64 -1 y) |
(neg.f64 y) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(-.f64 (+.f64 2 (*.f64 -1 y)) x) |
(-.f64 (+.f64 2 (neg.f64 y)) x) |
(+.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(+.f64 0 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(-.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 0) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) 1)) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y))))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(pow.f64 (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) 1) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) |
(+.f64 (-.f64 (-.f64 2 x) y) 0) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 0 (-.f64 (-.f64 2 x) y)) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 (-.f64 -1 (-.f64 y 2)) (-.f64 1 x)) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 (-.f64 -1 (-.f64 x 2)) (-.f64 1 y)) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 (-.f64 -1 (+.f64 y (-.f64 x 2))) 1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 (-.f64 -1 y) (-.f64 1 (-.f64 x 2))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(+.f64 (-.f64 -1 x) (-.f64 1 (-.f64 y 2))) |
(+.f64 (-.f64 -1 x) (-.f64 2 (-.f64 y 1))) |
(+.f64 (-.f64 -1 x) (-.f64 2 (+.f64 y -1))) |
(+.f64 (-.f64 -1 x) (-.f64 2 (+.f64 -1 y))) |
(+.f64 (-.f64 -1 x) (-.f64 3 y)) |
(*.f64 (-.f64 (-.f64 2 x) y) 1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 1 (-.f64 (-.f64 2 x) y)) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (+.f64 y (-.f64 x 2)) -1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (/.f64 1 (-.f64 (-.f64 2 x) y))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) 1)) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(*.f64 (*.f64 (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) (/.f64 (/.f64 1 (-.f64 (-.f64 2 x) y)) (*.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y)))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(/.f64 (-.f64 (-.f64 2 x) y) 1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(/.f64 (-.f64 (-.f64 2 x) y) (/.f64 (-.f64 (-.f64 2 x) y) (-.f64 (-.f64 2 x) y))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(/.f64 (+.f64 y (-.f64 x 2)) -1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(pow.f64 (-.f64 (-.f64 2 x) y) 1) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
(neg.f64 (+.f64 y (-.f64 x 2))) |
(-.f64 2 (+.f64 x y)) |
(-.f64 2 (+.f64 y x)) |
Compiled 3315 to 2348 computations (29.2% saved)
11 alts after pruning (10 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 113 | 10 | 123 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 113 | 11 | 124 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| ▶ | 21.8b | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 37.9b | (/.f64 (-.f64 x y) (neg.f64 y)) | |
| ▶ | 41.1b | (/.f64 (-.f64 x y) (neg.f64 x)) |
| ▶ | 32.8b | (/.f64 x (-.f64 2 x)) |
| ▶ | 37.7b | (-.f64 1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) |
| 41.1b | (-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) | |
| ▶ | 27.1b | (+.f64 (/.f64 x (-.f64 2 x)) (neg.f64 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
| 30.1b | (neg.f64 (/.f64 y (-.f64 2 y))) | |
| 37.9b | 1 | |
| 41.3b | -1 |
Compiled 237 to 177 computations (25.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 2 y)) |
Compiled 18 to 9 computations (50% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | inf | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 0.0ms | x | @ | -inf | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 0.0ms | x | @ | 0 | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 0.0ms | x | @ | inf | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 0.0ms | y | @ | 0 | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 1× | batch-egg-rewrite |
| 1490× | rational.json-5 |
| 1488× | exponential.json-3 |
| 1488× | rational.json-1 |
| 1488× | rational.json-2 |
| 1488× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 19 |
| 1 | 65 | 19 |
| 2 | 215 | 19 |
| 3 | 769 | 19 |
| 4 | 2905 | 19 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x y) (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x y) (-.f64 2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y)))))))) |
| 1× | egg-herbie |
| 1518× | rational.json-simplify-111 |
| 1044× | rational.json-simplify-47 |
| 880× | rational.json-simplify-2 |
| 738× | rational.json-simplify-1 |
| 702× | rational.json-simplify-55 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 96 | 1313 |
| 1 | 194 | 1269 |
| 2 | 367 | 1257 |
| 3 | 1232 | 1189 |
| 4 | 5069 | 1189 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (/.f64 y (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(/.f64 x (-.f64 2 y)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(/.f64 x (-.f64 2 y)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(*.f64 1/2 x) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 1/2 x)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 1/2 x) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y 3) (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 1/2 x) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))))) |
1 |
(+.f64 (*.f64 2 (/.f64 1 y)) (+.f64 1 (*.f64 -1 (/.f64 x y)))) |
(+.f64 1 (+.f64 (*.f64 2 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y))))) |
(+.f64 (*.f64 4 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 3))) (+.f64 1 (+.f64 (*.f64 2 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y)))))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 x 2) y))) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (*.f64 -1 (/.f64 (-.f64 x 2) y)))) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (+.f64 (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3))) (*.f64 -1 (/.f64 (-.f64 x 2) y))))) |
(+.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0) |
(+.f64 0 (/.f64 (-.f64 x y) (-.f64 2 y))) |
(-.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x y) (-.f64 2 y)))) 1) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(*.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))))) |
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
| Outputs |
|---|
(*.f64 -1 (/.f64 y (-.f64 2 y))) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(/.f64 x (-.f64 2 y)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(/.f64 x (-.f64 2 y)) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (*.f64 -1 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(+.f64 (neg.f64 (/.f64 y (-.f64 2 y))) (/.f64 x (-.f64 2 y))) |
(*.f64 1/2 x) |
(*.f64 x 1/2) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 1/2 x)) |
(+.f64 (*.f64 x 1/2) (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 x -1/4))))) |
(+.f64 (*.f64 x 1/2) (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 x -1/4))))) |
(+.f64 (*.f64 x 1/2) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (neg.f64 y))) |
(+.f64 (*.f64 x 1/2) (*.f64 y (-.f64 -1/2 (*.f64 x -1/4)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 1/2 x) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 x -1/4)))) (+.f64 (*.f64 x 1/2) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (pow.f64 y 2))))) |
(+.f64 (*.f64 x 1/2) (+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 x -1/4)))) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (*.f64 (pow.f64 y 2) -1/2)))) |
(+.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (neg.f64 y)) (+.f64 (*.f64 x 1/2) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (*.f64 -1/2 (pow.f64 y 2))))) |
(+.f64 (*.f64 x 1/2) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y 3) (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (+.f64 (*.f64 1/2 x) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 x -1/4)))) (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (pow.f64 y 2)))) (*.f64 -1/4 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (pow.f64 y 3))))) |
(+.f64 (*.f64 x 1/2) (+.f64 (+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 x -1/4)))) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (*.f64 (pow.f64 y 2) -1/2))) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (*.f64 (pow.f64 y 3) -1/4)))) |
(+.f64 (*.f64 x 1/2) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (pow.f64 y 3))) (+.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (neg.f64 y)) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (*.f64 -1/2 (pow.f64 y 2)))))) |
(+.f64 (*.f64 x 1/2) (+.f64 (*.f64 y (-.f64 -1/2 (*.f64 x -1/4))) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/4 (pow.f64 y 3)) (*.f64 -1/2 (pow.f64 y 2)))))) |
1 |
(+.f64 (*.f64 2 (/.f64 1 y)) (+.f64 1 (*.f64 -1 (/.f64 x y)))) |
(+.f64 1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y)))) |
(+.f64 1 (+.f64 (*.f64 2 (/.f64 1 y)) (neg.f64 (/.f64 x y)))) |
(+.f64 (*.f64 2 (/.f64 1 y)) (-.f64 1 (/.f64 x y))) |
(+.f64 1 (+.f64 (*.f64 2 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y))))) |
(+.f64 1 (+.f64 (neg.f64 (/.f64 x y)) (+.f64 (*.f64 2 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2))) (*.f64 2 (/.f64 1 y))))) |
(+.f64 1 (+.f64 (neg.f64 (/.f64 x y)) (*.f64 2 (+.f64 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2)) (/.f64 1 y))))) |
(+.f64 (-.f64 1 (/.f64 x y)) (*.f64 2 (+.f64 (/.f64 1 y) (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2))))) |
(+.f64 (*.f64 4 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 3))) (+.f64 1 (+.f64 (*.f64 2 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y)))))) |
(+.f64 1 (+.f64 (+.f64 (*.f64 2 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 -1 (/.f64 x y)))) (*.f64 4 (/.f64 (+.f64 2 (*.f64 -1 x)) (pow.f64 y 3))))) |
(+.f64 (*.f64 2 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2))) (+.f64 (+.f64 1 (+.f64 (*.f64 2 (/.f64 1 y)) (neg.f64 (/.f64 x y)))) (*.f64 4 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 3))))) |
(+.f64 (+.f64 (neg.f64 (/.f64 x y)) (*.f64 2 (+.f64 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2)) (/.f64 1 y)))) (+.f64 1 (*.f64 4 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 3))))) |
(+.f64 (-.f64 1 (/.f64 x y)) (+.f64 (*.f64 4 (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 3))) (*.f64 2 (+.f64 (/.f64 1 y) (/.f64 (+.f64 2 (neg.f64 x)) (pow.f64 y 2)))))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 x 2) y))) |
(+.f64 1 (neg.f64 (/.f64 (-.f64 x 2) y))) |
(-.f64 1 (/.f64 (-.f64 x 2) y)) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (*.f64 -1 (/.f64 (-.f64 x 2) y)))) |
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 x 2) y)) (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))))) |
(+.f64 1 (+.f64 (neg.f64 (/.f64 (-.f64 x 2) y)) (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))))) |
(+.f64 (-.f64 1 (/.f64 (-.f64 x 2) y)) (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2)))) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (+.f64 (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3))) (*.f64 -1 (/.f64 (-.f64 x 2) y))))) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 x 2) y)) (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3)))))) |
(+.f64 1 (+.f64 (neg.f64 (/.f64 (-.f64 x 2) y)) (+.f64 (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3))) (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2)))))) |
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (+.f64 (neg.f64 (/.f64 (-.f64 x 2) y)) (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3)))))) |
(+.f64 (-.f64 1 (/.f64 (-.f64 x 2) y)) (+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3))))) |
(+.f64 (*.f64 -2 (/.f64 (-.f64 x 2) (pow.f64 y 2))) (+.f64 (-.f64 1 (/.f64 (-.f64 x 2) y)) (*.f64 -4 (/.f64 (-.f64 x 2) (pow.f64 y 3))))) |
(+.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(+.f64 0 (/.f64 (-.f64 x y) (-.f64 2 y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 0) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x y) (-.f64 2 y)))) 1) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (/.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (-.f64 2 y))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (*.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) (/.f64 (-.f64 x y) (-.f64 2 y))))))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 y)) 1) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (-.f64 2 y)))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
Compiled 12 to 8 computations (33.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (neg.f64 x)) |
Compiled 15 to 5 computations (66.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (/.f64 (-.f64 x y) (neg.f64 x)) |
| 0.0ms | y | @ | -inf | (/.f64 (-.f64 x y) (neg.f64 x)) |
| 0.0ms | x | @ | inf | (/.f64 (-.f64 x y) (neg.f64 x)) |
| 0.0ms | y | @ | 0 | (/.f64 (-.f64 x y) (neg.f64 x)) |
| 0.0ms | x | @ | -inf | (/.f64 (-.f64 x y) (neg.f64 x)) |
| 1× | batch-egg-rewrite |
| 1614× | rational.json-1 |
| 1614× | rational.json-2 |
| 1614× | rational.json-3 |
| 1612× | rational.json-5 |
| 1610× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 17 |
| 1 | 70 | 17 |
| 2 | 244 | 17 |
| 3 | 847 | 17 |
| 4 | 3244 | 17 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 x y) (neg.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x y) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 (-.f64 x y) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x)))))))) |
| 1× | egg-herbie |
| 1430× | rational.json-simplify-79 |
| 1368× | rational.json-simplify-47 |
| 1134× | rational.json-simplify-2 |
| 824× | rational.json-simplify-41 |
| 666× | rational.json-simplify-73 |
Useful iterations: 7 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 36 | 900 |
| 1 | 64 | 884 |
| 2 | 130 | 884 |
| 3 | 341 | 884 |
| 4 | 1103 | 884 |
| 5 | 1948 | 884 |
| 6 | 3312 | 796 |
| 7 | 5438 | 784 |
| 8 | 6671 | 784 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0) |
(+.f64 0 (/.f64 (-.f64 x y) (neg.f64 x))) |
(-.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x)))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) |
(*.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) |
(*.f64 (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 (-.f64 x y) (neg.f64 x))) |
(*.f64 (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))))) |
(pow.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x)))) |
| Outputs |
|---|
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
-1 |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(/.f64 y x) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(-.f64 (/.f64 y x) 1) |
(+.f64 (/.f64 y x) -1) |
(+.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(+.f64 0 (/.f64 (-.f64 x y) (neg.f64 x))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(-.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 0) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x)))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) |
(*.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(*.f64 (/.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 (-.f64 x y) (neg.f64 x))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) |
(*.f64 (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x))))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (fabs.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (fabs.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (fabs.f64 (/.f64 (-.f64 x y) x)) (fabs.f64 (/.f64 (-.f64 x y) x)))))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (fabs.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (fabs.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))) (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))))))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x))) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (-.f64 x y) x))))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) x) (*.f64 (/.f64 (-.f64 x y) x) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 x)))))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 x)) (/.f64 (/.f64 (-.f64 x y) x) (/.f64 (-.f64 x y) x)))) |
(pow.f64 (/.f64 (-.f64 x y) (neg.f64 x)) 1) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 x)))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
Compiled 30 to 22 computations (26.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
| 0.0ms | y | @ | 0 | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
| 0.0ms | x | @ | 0 | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
| 0.0ms | x | @ | -inf | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
| 0.0ms | y | @ | inf | (/.f64 (-.f64 (*.f64 2 x) 2) y) |
| 1× | batch-egg-rewrite |
| 1500× | rational.json-5 |
| 1498× | exponential.json-3 |
| 1498× | rational.json-1 |
| 1498× | rational.json-2 |
| 1498× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 19 |
| 1 | 66 | 19 |
| 2 | 218 | 19 |
| 3 | 795 | 19 |
| 4 | 2947 | 19 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 (*.f64 2 x) 2) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x (-.f64 2 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (-.f64 2 x)) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y))))))) |
| 1× | egg-herbie |
| 1120× | rational.json-simplify-111 |
| 990× | rational.json-simplify-47 |
| 930× | rational.json-simplify-58 |
| 924× | rational.json-simplify-1 |
| 850× | exponential.json-simplify-26 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 47 | 635 |
| 1 | 88 | 581 |
| 2 | 176 | 581 |
| 3 | 808 | 581 |
| 4 | 3536 | 581 |
| 5 | 5883 | 581 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 -2 y) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (/.f64 x y)) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (/.f64 x y)) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(+.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0) |
(+.f64 0 (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(-.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (-.f64 2 x)) y))) 1) |
(*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1) |
(*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(*.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(*.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))))) |
(pow.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
| Outputs |
|---|
(/.f64 -2 y) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(*.f64 2 (/.f64 x y)) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(*.f64 2 (/.f64 x y)) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(-.f64 (*.f64 2 (/.f64 x y)) (*.f64 2 (/.f64 1 y))) |
(*.f64 2 (-.f64 (/.f64 x y) (/.f64 1 y))) |
(+.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(+.f64 0 (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(-.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 0) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (-.f64 2 x)) y))) 1) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y)) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (/.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))) (*.f64 (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y)) (*.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) (/.f64 (-.f64 x (-.f64 2 x)) y))))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(pow.f64 (/.f64 (-.f64 x (-.f64 2 x)) y) 1) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x (-.f64 2 x)) y))) |
(/.f64 (-.f64 x (-.f64 2 x)) y) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.4b | (/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
| ✓ | 5.4b | (/.f64 x (pow.f64 (-.f64 2 x) 3)) |
| ✓ | 6.9b | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| ✓ | 12.9b | (/.f64 x (pow.f64 (-.f64 2 x) 2)) |
Compiled 255 to 197 computations (22.7% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y | @ | 0 | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| 1.0ms | x | @ | 0 | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| 1.0ms | x | @ | inf | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| 1.0ms | y | @ | inf | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| 1.0ms | x | @ | -inf | (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
| 1× | batch-egg-rewrite |
| 942× | rational.json-simplify-47 |
| 766× | rational.json-simplify-50 |
| 720× | rational.json-5 |
| 718× | exponential.json-3 |
| 718× | rational.json-1 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 116 |
| 1 | 149 | 116 |
| 2 | 438 | 116 |
| 3 | 1548 | 116 |
| 4 | 6164 | 112 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2)) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))))) |
| 1× | egg-herbie |
| 1714× | rational.json-simplify-47 |
| 956× | rational.json-simplify-2 |
| 902× | rational.json-simplify-1 |
| 856× | rational.json-simplify-54 |
| 594× | rational.json-simplify-42 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 251 | 4970 |
| 1 | 523 | 4910 |
| 2 | 1160 | 4832 |
| 3 | 3424 | 4820 |
| 4 | 7760 | 4820 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/4 x) |
(+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x)) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x))) |
(+.f64 (*.f64 1/8 (pow.f64 x 4)) (+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x)))) |
(/.f64 1 x) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x))) |
(+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)))) |
(/.f64 1 x) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x))) |
(+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)))) |
(*.f64 1/4 (pow.f64 y 2)) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 (pow.f64 y 2) x))) |
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 (pow.f64 y 2) x)))) |
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 -5/64 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 1/8 (*.f64 (pow.f64 y 2) x))))) |
(*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 1/8 x) |
(+.f64 (*.f64 1/8 x) (*.f64 3/16 (pow.f64 x 2))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/8 x) (*.f64 3/16 (pow.f64 x 2)))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/8 x) (+.f64 (*.f64 3/16 (pow.f64 x 2)) (*.f64 5/32 (pow.f64 x 4))))) |
(/.f64 -1 (pow.f64 x 2)) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))) |
(neg.f64 (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3)))))) |
(neg.f64 (+.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))))) |
(/.f64 -1 (pow.f64 x 2)) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))) |
(neg.f64 (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3)))))) |
(neg.f64 (+.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))))) |
1/4 |
(+.f64 1/4 (*.f64 1/4 x)) |
(+.f64 1/4 (+.f64 (*.f64 3/16 (pow.f64 x 2)) (*.f64 1/4 x))) |
(+.f64 1/4 (+.f64 (*.f64 3/16 (pow.f64 x 2)) (+.f64 (*.f64 1/4 x) (*.f64 1/8 (pow.f64 x 3))))) |
(/.f64 1 (pow.f64 x 2)) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 4 (/.f64 1 (pow.f64 x 3)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(/.f64 1 (pow.f64 x 2)) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 4 (/.f64 1 (pow.f64 x 3)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0) |
(+.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0) |
(-.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) 1) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(*.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) |
(*.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) |
(pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1) |
(neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(+.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0) |
(+.f64 0 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2))) |
(-.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0) |
(-.f64 0 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) 1) |
(/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1) |
(/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(pow.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1) |
(neg.f64 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(+.f64 1 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1)) |
(+.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0) |
(+.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(+.f64 -1 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(+.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1) |
(+.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) 1) |
(-.f64 1 (-.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0) |
(-.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 -1 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1) |
(-.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) -2) 2) |
(-.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) -1) |
(*.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1) |
(*.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(*.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) |
(pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) |
(neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0) |
(+.f64 0 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0) |
(-.f64 0 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) 1) |
(*.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1) |
(*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1)) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) |
(*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))) |
(pow.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1) |
(neg.f64 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
| Outputs |
|---|
(*.f64 1/4 x) |
(+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x)) |
(+.f64 (*.f64 1/4 x) (*.f64 1/4 (pow.f64 x 2))) |
(*.f64 1/4 (+.f64 (pow.f64 x 2) x)) |
(*.f64 1/4 (+.f64 x (pow.f64 x 2))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x))) |
(+.f64 (*.f64 1/4 (pow.f64 x 2)) (+.f64 (*.f64 1/4 x) (*.f64 3/16 (pow.f64 x 3)))) |
(+.f64 (*.f64 1/4 (+.f64 (pow.f64 x 2) x)) (*.f64 3/16 (pow.f64 x 3))) |
(+.f64 (*.f64 1/4 (+.f64 x (pow.f64 x 2))) (*.f64 3/16 (pow.f64 x 3))) |
(+.f64 (*.f64 1/8 (pow.f64 x 4)) (+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 1/4 x)))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (+.f64 (*.f64 1/4 x) (*.f64 1/4 (pow.f64 x 2))) (*.f64 1/8 (pow.f64 x 4)))) |
(+.f64 (*.f64 1/4 (+.f64 (pow.f64 x 2) x)) (+.f64 (*.f64 1/8 (pow.f64 x 4)) (*.f64 3/16 (pow.f64 x 3)))) |
(+.f64 (*.f64 1/4 (+.f64 x (pow.f64 x 2))) (+.f64 (*.f64 3/16 (pow.f64 x 3)) (*.f64 1/8 (pow.f64 x 4)))) |
(/.f64 1 x) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)) |
(+.f64 (/.f64 1 x) (*.f64 4 (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)))) |
(+.f64 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) (*.f64 32 (/.f64 1 (pow.f64 x 4)))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3)))) (*.f64 32 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 x) (+.f64 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3)))) (*.f64 32 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3)))))) |
(/.f64 1 x) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)) |
(+.f64 (/.f64 1 x) (*.f64 4 (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (/.f64 1 x)))) |
(+.f64 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3))))) (*.f64 32 (/.f64 1 (pow.f64 x 4)))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (+.f64 (+.f64 (/.f64 1 x) (*.f64 12 (/.f64 1 (pow.f64 x 3)))) (*.f64 32 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 x) (+.f64 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3)))) (*.f64 32 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 x) (+.f64 (*.f64 32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 12 (/.f64 1 (pow.f64 x 3)))))) |
(*.f64 1/4 (pow.f64 y 2)) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 (pow.f64 y 2) x))) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 x (pow.f64 y 2)))) |
(*.f64 (pow.f64 y 2) (+.f64 1/4 (*.f64 x 1/8))) |
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 (pow.f64 y 2) x)))) |
(+.f64 (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (*.f64 x (pow.f64 y 2)))) (*.f64 -1/16 (*.f64 (pow.f64 x 3) (pow.f64 y 2)))) |
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 1/4 (*.f64 x 1/8))) (*.f64 (pow.f64 x 3) (*.f64 -1/16 (pow.f64 y 2)))) |
(*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 3) -1/16) (+.f64 1/4 (*.f64 x 1/8)))) |
(*.f64 (pow.f64 y 2) (+.f64 1/4 (+.f64 (*.f64 x 1/8) (*.f64 (pow.f64 x 3) -1/16)))) |
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 -5/64 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 1/8 (*.f64 (pow.f64 y 2) x))))) |
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 x 3) (pow.f64 y 2))) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/8 (*.f64 x (pow.f64 y 2))) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) -5/64))))) |
(+.f64 (*.f64 (pow.f64 x 3) (*.f64 -1/16 (pow.f64 y 2))) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 1/4 (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) (*.f64 -5/64 (pow.f64 y 2))))) |
(+.f64 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 y 2) -1/16)) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 4) -5/64) (+.f64 1/4 (*.f64 x 1/8))))) |
(*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 4) -5/64) (+.f64 (*.f64 (pow.f64 x 3) -1/16) (+.f64 1/4 (*.f64 x 1/8))))) |
(*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))))) |
(+.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4)))) |
(+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4)))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))))) |
(+.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3)))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4)))) |
(+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))))) |
(+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5))) (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4)))))) |
(+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 10 (/.f64 (pow.f64 y 2) (pow.f64 x 3))) (+.f64 (*.f64 36 (/.f64 (pow.f64 y 2) (pow.f64 x 4))) (*.f64 112 (/.f64 (pow.f64 y 2) (pow.f64 x 5)))))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 1/8 x) |
(*.f64 x 1/8) |
(+.f64 (*.f64 1/8 x) (*.f64 3/16 (pow.f64 x 2))) |
(+.f64 (*.f64 x 1/8) (*.f64 (pow.f64 x 2) 3/16)) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/8 x) (*.f64 3/16 (pow.f64 x 2)))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 x 1/8) (*.f64 (pow.f64 x 2) 3/16))) |
(+.f64 (*.f64 x 1/8) (*.f64 3/16 (+.f64 (pow.f64 x 3) (pow.f64 x 2)))) |
(+.f64 (*.f64 x 1/8) (*.f64 3/16 (+.f64 (pow.f64 x 2) (pow.f64 x 3)))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 1/8 x) (+.f64 (*.f64 3/16 (pow.f64 x 2)) (*.f64 5/32 (pow.f64 x 4))))) |
(+.f64 (*.f64 3/16 (pow.f64 x 3)) (+.f64 (*.f64 x 1/8) (+.f64 (*.f64 (pow.f64 x 2) 3/16) (*.f64 (pow.f64 x 4) 5/32)))) |
(+.f64 (*.f64 (pow.f64 x 2) 3/16) (+.f64 (+.f64 (*.f64 x 1/8) (*.f64 (pow.f64 x 4) 5/32)) (*.f64 3/16 (pow.f64 x 3)))) |
(+.f64 (*.f64 x 1/8) (+.f64 (*.f64 (pow.f64 x 4) 5/32) (*.f64 3/16 (+.f64 (pow.f64 x 2) (pow.f64 x 3))))) |
(/.f64 -1 (pow.f64 x 2)) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) |
(-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) |
(neg.f64 (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3)))))) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 6) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)))) |
(-.f64 (neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(-.f64 (-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(neg.f64 (+.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))))) |
(neg.f64 (+.f64 (*.f64 (/.f64 1 (pow.f64 x 4)) 24) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (*.f64 80 (/.f64 1 (pow.f64 x 5)))))) |
(-.f64 (-.f64 (neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) (*.f64 80 (/.f64 1 (pow.f64 x 5)))) |
(-.f64 (-.f64 (neg.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5)))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(-.f64 (-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (+.f64 (*.f64 (/.f64 1 (pow.f64 x 4)) 24) (*.f64 80 (/.f64 1 (pow.f64 x 5))))) |
(/.f64 -1 (pow.f64 x 2)) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) |
(-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) |
(neg.f64 (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3)))))) |
(neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 6) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)))) |
(-.f64 (neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(-.f64 (-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(neg.f64 (+.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 24 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 6 (/.f64 1 (pow.f64 x 3))))))) |
(neg.f64 (+.f64 (*.f64 (/.f64 1 (pow.f64 x 4)) 24) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (*.f64 80 (/.f64 1 (pow.f64 x 5)))))) |
(-.f64 (-.f64 (neg.f64 (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) (*.f64 80 (/.f64 1 (pow.f64 x 5)))) |
(-.f64 (-.f64 (neg.f64 (*.f64 80 (/.f64 1 (pow.f64 x 5)))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 (/.f64 1 (pow.f64 x 3)) 6))) (*.f64 (/.f64 1 (pow.f64 x 4)) 24)) |
(-.f64 (-.f64 (neg.f64 (/.f64 1 (pow.f64 x 2))) (*.f64 (/.f64 1 (pow.f64 x 3)) 6)) (+.f64 (*.f64 (/.f64 1 (pow.f64 x 4)) 24) (*.f64 80 (/.f64 1 (pow.f64 x 5))))) |
1/4 |
(+.f64 1/4 (*.f64 1/4 x)) |
(+.f64 1/4 (+.f64 (*.f64 3/16 (pow.f64 x 2)) (*.f64 1/4 x))) |
(+.f64 1/4 (+.f64 (*.f64 1/4 x) (*.f64 (pow.f64 x 2) 3/16))) |
(+.f64 (*.f64 (pow.f64 x 2) 3/16) (+.f64 1/4 (*.f64 1/4 x))) |
(+.f64 1/4 (+.f64 (*.f64 3/16 (pow.f64 x 2)) (+.f64 (*.f64 1/4 x) (*.f64 1/8 (pow.f64 x 3))))) |
(+.f64 1/4 (+.f64 (*.f64 (pow.f64 x 2) 3/16) (+.f64 (*.f64 1/4 x) (*.f64 (pow.f64 x 3) 1/8)))) |
(/.f64 1 (pow.f64 x 2)) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 4 (/.f64 1 (pow.f64 x 3)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 12 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (*.f64 4 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (*.f64 12 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(/.f64 1 (pow.f64 x 2)) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 4 (/.f64 1 (pow.f64 x 3)))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 2)))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 12 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (*.f64 4 (/.f64 1 (pow.f64 x 3))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (*.f64 12 (/.f64 1 (pow.f64 x 4))))) |
(+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 2)) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (*.f64 12 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 3))) (*.f64 32 (/.f64 1 (pow.f64 x 5)))))) |
(+.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(+.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 0) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(-.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1)) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 2))))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 2)) |
(+.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(+.f64 0 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 0) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 0 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) 1) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (/.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(pow.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)) 1) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(neg.f64 (neg.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (pow.f64 y 2)))) |
(*.f64 (pow.f64 y 2) (-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(+.f64 1 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1)) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 0 (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 -1 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 1 (-.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 0) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 0 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 -1 (-.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 (+.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) -2) 2) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(-.f64 (-.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) -1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))) -1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1)) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (/.f64 -1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 1 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (/.f64 (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) |
(*.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (neg.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(*.f64 (/.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 -1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) |
(*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (/.f64 (*.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) 1) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(*.f64 (*.f64 (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (pow.f64 (-.f64 2 x) 3))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (*.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) (/.f64 x (pow.f64 (-.f64 2 x) 3))))))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(pow.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)) 1) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(neg.f64 (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) |
(/.f64 x (pow.f64 (-.f64 2 x) 3)) |
(+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(+.f64 0 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(-.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 0) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(-.f64 0 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) 1) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1)) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 (/.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) 1) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2))) (*.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (/.f64 1 (pow.f64 (-.f64 2 x) 2)))))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(pow.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) 1) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
(neg.f64 (neg.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)))) |
(/.f64 1 (pow.f64 (-.f64 2 x) 2)) |
Compiled 12499 to 9203 computations (26.4% saved)
13 alts after pruning (10 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 287 | 5 | 292 |
| Fresh | 0 | 5 | 5 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 3 | 5 |
| Total | 290 | 13 | 303 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| ✓ | 21.8b | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| 37.9b | (/.f64 (-.f64 x y) (neg.f64 y)) | |
| ✓ | 32.8b | (/.f64 x (-.f64 2 x)) |
| ▶ | 41.1b | (-.f64 (/.f64 y x) 1) |
| 37.9b | (-.f64 1 (/.f64 -2 y)) | |
| ▶ | 37.6b | (-.f64 1 (*.f64 2 (/.f64 x y))) |
| 41.1b | (-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) | |
| ▶ | 47.6b | (+.f64 (*.f64 x 1/2) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y)))) |
| ▶ | 53.9b | (*.f64 x 1/2) |
| ▶ | 30.1b | (neg.f64 (/.f64 y (-.f64 2 y))) |
| 37.9b | 1 | |
| 41.3b | -1 |
Compiled 187 to 142 computations (24.1% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 y (-.f64 2 y)) |
Compiled 18 to 12 computations (33.3% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y | @ | -inf | (/.f64 y (-.f64 2 y)) |
| 2.0ms | y | @ | 0 | (/.f64 y (-.f64 2 y)) |
| 0.0ms | y | @ | inf | (/.f64 y (-.f64 2 y)) |
| 1× | batch-egg-rewrite |
| 1096× | rational.json-5 |
| 1094× | exponential.json-3 |
| 1094× | rational.json-1 |
| 1094× | rational.json-2 |
| 1094× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 13 |
| 1 | 49 | 13 |
| 2 | 162 | 13 |
| 3 | 569 | 13 |
| 4 | 2136 | 13 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 y (-.f64 2 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y (-.f64 2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 y (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 y (-.f64 2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 y (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 y (-.f64 2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 2 y)) (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 1 (/.f64 y (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) (/.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (-.f64 2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 y (-.f64 2 y)))))))) |
| 1× | egg-herbie |
| 990× | rational.json-simplify-47 |
| 926× | rational.json-simplify-58 |
| 850× | exponential.json-simplify-26 |
| 678× | rational.json-simplify-2 |
| 600× | rational.json-simplify-1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 72 | 641 |
| 1 | 150 | 617 |
| 2 | 289 | 617 |
| 3 | 995 | 617 |
| 4 | 3828 | 617 |
| 5 | 6347 | 617 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/2 y) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/2 y)) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 y) (*.f64 1/8 (pow.f64 y 3)))) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/16 (pow.f64 y 4)) (+.f64 (*.f64 1/2 y) (*.f64 1/8 (pow.f64 y 3))))) |
-1 |
(neg.f64 (+.f64 (*.f64 2 (/.f64 1 y)) 1)) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (*.f64 2 (/.f64 1 y))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 2 (/.f64 1 y)))))) |
-1 |
(neg.f64 (+.f64 (*.f64 2 (/.f64 1 y)) 1)) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (*.f64 2 (/.f64 1 y))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 2 (/.f64 1 y)))))) |
(+.f64 (/.f64 y (-.f64 2 y)) 0) |
(+.f64 0 (/.f64 y (-.f64 2 y))) |
(-.f64 (/.f64 y (-.f64 2 y)) 0) |
(-.f64 0 (neg.f64 (/.f64 y (-.f64 2 y)))) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 y (-.f64 2 y)))) 1) |
(*.f64 (/.f64 y (-.f64 2 y)) 1) |
(*.f64 (/.f64 y (-.f64 2 y)) (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) |
(*.f64 1 (/.f64 y (-.f64 2 y))) |
(*.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y))) |
(*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 1 (/.f64 y (-.f64 2 y)))) |
(*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y)))) |
(*.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) |
(*.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) (/.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))))) |
(pow.f64 (/.f64 y (-.f64 2 y)) 1) |
(neg.f64 (neg.f64 (/.f64 y (-.f64 2 y)))) |
| Outputs |
|---|
(*.f64 1/2 y) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/2 y)) |
(+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2))) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 y) (*.f64 1/8 (pow.f64 y 3)))) |
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/8 (pow.f64 y 3)))) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/16 (pow.f64 y 4)) (+.f64 (*.f64 1/2 y) (*.f64 1/8 (pow.f64 y 3))))) |
(+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/8 (pow.f64 y 3)) (*.f64 1/16 (pow.f64 y 4))))) |
(+.f64 (*.f64 1/2 y) (+.f64 (+.f64 (*.f64 1/8 (pow.f64 y 3)) (*.f64 1/16 (pow.f64 y 4))) (*.f64 1/4 (pow.f64 y 2)))) |
(+.f64 (*.f64 1/8 (pow.f64 y 3)) (+.f64 (+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2))) (*.f64 1/16 (pow.f64 y 4)))) |
(+.f64 (+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2))) (+.f64 (*.f64 1/8 (pow.f64 y 3)) (*.f64 1/16 (pow.f64 y 4)))) |
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/8 (pow.f64 y 3)) (*.f64 1/16 (pow.f64 y 4))))) |
-1 |
(neg.f64 (+.f64 (*.f64 2 (/.f64 1 y)) 1)) |
(neg.f64 (+.f64 1 (*.f64 2 (/.f64 1 y)))) |
(-.f64 -1 (*.f64 2 (/.f64 1 y))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (*.f64 2 (/.f64 1 y))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2)))))) |
(-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 2 (/.f64 1 y)))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 8 (/.f64 1 (pow.f64 y 3))))))) |
(-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 4 (/.f64 1 (pow.f64 y 2)))))) |
(-.f64 (-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2))))) (*.f64 8 (/.f64 1 (pow.f64 y 3)))) |
(-.f64 (-.f64 (-.f64 -1 (*.f64 4 (/.f64 1 (pow.f64 y 2)))) (*.f64 8 (/.f64 1 (pow.f64 y 3)))) (*.f64 2 (/.f64 1 y))) |
-1 |
(neg.f64 (+.f64 (*.f64 2 (/.f64 1 y)) 1)) |
(neg.f64 (+.f64 1 (*.f64 2 (/.f64 1 y)))) |
(-.f64 -1 (*.f64 2 (/.f64 1 y))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (*.f64 2 (/.f64 1 y))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2)))))) |
(-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 2 (/.f64 1 y)))))) |
(neg.f64 (+.f64 1 (+.f64 (*.f64 4 (/.f64 1 (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 8 (/.f64 1 (pow.f64 y 3))))))) |
(-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (+.f64 (*.f64 8 (/.f64 1 (pow.f64 y 3))) (*.f64 4 (/.f64 1 (pow.f64 y 2)))))) |
(-.f64 (-.f64 -1 (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 1 (pow.f64 y 2))))) (*.f64 8 (/.f64 1 (pow.f64 y 3)))) |
(-.f64 (-.f64 (-.f64 -1 (*.f64 4 (/.f64 1 (pow.f64 y 2)))) (*.f64 8 (/.f64 1 (pow.f64 y 3)))) (*.f64 2 (/.f64 1 y))) |
(+.f64 (/.f64 y (-.f64 2 y)) 0) |
(/.f64 y (-.f64 2 y)) |
(+.f64 0 (/.f64 y (-.f64 2 y))) |
(/.f64 y (-.f64 2 y)) |
(-.f64 (/.f64 y (-.f64 2 y)) 0) |
(/.f64 y (-.f64 2 y)) |
(-.f64 0 (neg.f64 (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 y (-.f64 2 y)))) 1) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (/.f64 y (-.f64 2 y)) 1) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (/.f64 y (-.f64 2 y)) (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 1 (/.f64 y (-.f64 2 y))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 1 (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 (/.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) |
(/.f64 y (-.f64 2 y)) |
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))))) (/.f64 (/.f64 (/.f64 1 (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))) (*.f64 (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (/.f64 y (-.f64 2 y)))))) |
(/.f64 y (-.f64 2 y)) |
(pow.f64 (/.f64 y (-.f64 2 y)) 1) |
(/.f64 y (-.f64 2 y)) |
(neg.f64 (neg.f64 (/.f64 y (-.f64 2 y)))) |
(/.f64 y (-.f64 2 y)) |
Compiled 7 to 5 computations (28.6% saved)
Compiled 13 to 6 computations (53.8% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 2 (/.f64 x y)) |
Compiled 21 to 11 computations (47.6% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (*.f64 2 (/.f64 x y)) |
| 1.0ms | x | @ | inf | (*.f64 2 (/.f64 x y)) |
| 1.0ms | y | @ | 0 | (*.f64 2 (/.f64 x y)) |
| 1.0ms | y | @ | inf | (*.f64 2 (/.f64 x y)) |
| 0.0ms | x | @ | -inf | (*.f64 2 (/.f64 x y)) |
| 1× | batch-egg-rewrite |
| 1300× | rational.json-5 |
| 1298× | exponential.json-3 |
| 1298× | rational.json-1 |
| 1298× | rational.json-2 |
| 1298× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 58 | 13 |
| 2 | 190 | 13 |
| 3 | 690 | 13 |
| 4 | 2556 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 2 (/.f64 x y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x y) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (/.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (/.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (/.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 2 (/.f64 x y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 x y)) (/.f64 (/.f64 x y) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 x y) -2)))))) |
| 1× | egg-herbie |
| 1218× | rational.json-simplify-104 |
| 1126× | rational.json-simplify-42 |
| 1056× | rational.json-simplify-79 |
| 970× | rational.json-simplify-73 |
| 920× | rational.json-simplify-80 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 28 | 183 |
| 1 | 51 | 183 |
| 2 | 92 | 183 |
| 3 | 206 | 183 |
| 4 | 531 | 183 |
| 5 | 1606 | 183 |
| 6 | 2737 | 183 |
| 7 | 4162 | 183 |
| 8 | 4959 | 183 |
| 9 | 6379 | 183 |
| 10 | 6954 | 183 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (/.f64 x y) (/.f64 x y)) |
(+.f64 (*.f64 2 (/.f64 x y)) 0) |
(+.f64 0 (*.f64 2 (/.f64 x y))) |
(-.f64 (/.f64 x y) (neg.f64 (/.f64 x y))) |
(-.f64 (*.f64 2 (/.f64 x y)) 0) |
(-.f64 0 (*.f64 (/.f64 x y) -2)) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 2 (/.f64 x y)))) 1) |
(/.f64 (*.f64 2 (/.f64 x y)) 1) |
(/.f64 (*.f64 2 (/.f64 x y)) (/.f64 (/.f64 x y) (/.f64 x y))) |
(pow.f64 (*.f64 2 (/.f64 x y)) 1) |
(neg.f64 (*.f64 (/.f64 x y) -2)) |
| Outputs |
|---|
(+.f64 (/.f64 x y) (/.f64 x y)) |
(+.f64 (*.f64 2 (/.f64 x y)) 0) |
(*.f64 (/.f64 x y) 2) |
(+.f64 0 (*.f64 2 (/.f64 x y))) |
(*.f64 (/.f64 x y) 2) |
(-.f64 (/.f64 x y) (neg.f64 (/.f64 x y))) |
(-.f64 (*.f64 2 (/.f64 x y)) 0) |
(*.f64 (/.f64 x y) 2) |
(-.f64 0 (*.f64 (/.f64 x y) -2)) |
(*.f64 (/.f64 x y) 2) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 2 (/.f64 x y)))) 1) |
(*.f64 (/.f64 x y) 2) |
(/.f64 (*.f64 2 (/.f64 x y)) 1) |
(*.f64 (/.f64 x y) 2) |
(/.f64 (*.f64 2 (/.f64 x y)) (/.f64 (/.f64 x y) (/.f64 x y))) |
(/.f64 (*.f64 (/.f64 x y) 2) (/.f64 (/.f64 x y) (/.f64 x y))) |
(*.f64 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 2 (/.f64 x y))) |
(*.f64 (*.f64 (/.f64 x y) 2) (/.f64 (/.f64 x y) (/.f64 x y))) |
(pow.f64 (*.f64 2 (/.f64 x y)) 1) |
(*.f64 (/.f64 x y) 2) |
(neg.f64 (*.f64 (/.f64 x y) -2)) |
(*.f64 (/.f64 x y) 2) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
Compiled 69 to 49 computations (29% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | 0 | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| 1.0ms | y | @ | inf | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| 1.0ms | y | @ | 0 | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| 0.0ms | x | @ | inf | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| 0.0ms | y | @ | -inf | (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| 1× | batch-egg-rewrite |
| 886× | rational.json-simplify-47 |
| 764× | rational.json-simplify-49 |
| 738× | rational.json-simplify-58 |
| 656× | rational.json-simplify-50 |
| 608× | rational.json-5 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 41 |
| 1 | 135 | 41 |
| 2 | 386 | 41 |
| 3 | 1340 | 41 |
| 4 | 5355 | 37 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))))))) |
| 1× | egg-herbie |
| 1114× | rational.json-simplify-1 |
| 950× | rational.json-simplify-111 |
| 810× | rational.json-simplify-2 |
| 712× | rational.json-simplify-41 |
| 620× | rational.json-simplify-79 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 42 | 1821 |
| 1 | 85 | 1369 |
| 2 | 168 | 1369 |
| 3 | 430 | 1203 |
| 4 | 1612 | 1203 |
| 5 | 4667 | 1203 |
| 6 | 6934 | 1203 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0) |
(+.f64 0 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(-.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0) |
(-.f64 0 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) 1) |
(/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1) |
(/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
(pow.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1) |
(neg.f64 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
| Outputs |
|---|
(*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x)) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) x)) (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) |
(*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 y (-.f64 -1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (*.f64 (+.f64 1/2 (*.f64 -1/4 x)) -1)) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 -1/2 (*.f64 (pow.f64 y 2) (+.f64 1/2 (*.f64 -1/4 x))))) |
(+.f64 (*.f64 y (neg.f64 (+.f64 1/2 (*.f64 -1/4 x)))) (*.f64 (*.f64 -1/2 (pow.f64 y 2)) (+.f64 1/2 (*.f64 -1/4 x)))) |
(*.f64 (+.f64 1/2 (*.f64 -1/4 x)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y))) |
(+.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(+.f64 0 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(-.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 0) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(-.f64 0 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) 1) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (/.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(pow.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) 1) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
(neg.f64 (neg.f64 (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)))) |
(+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y)) (*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (*.f64 -1/4 x))) |
(*.f64 (-.f64 (*.f64 -1/2 (pow.f64 y 2)) y) (+.f64 1/2 (*.f64 -1/4 x))) |
Compiled 1427 to 1069 computations (25.1% saved)
14 alts after pruning (7 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 80 | 2 | 82 |
| Fresh | 0 | 5 | 5 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 7 | 7 |
| Total | 81 | 14 | 95 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| ✓ | 21.8b | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| ▶ | 37.9b | (/.f64 (-.f64 x y) (neg.f64 y)) |
| ✓ | 32.8b | (/.f64 x (-.f64 2 x)) |
| ✓ | 41.1b | (-.f64 (/.f64 y x) 1) |
| ▶ | 37.9b | (-.f64 1 (/.f64 -2 y)) |
| ✓ | 37.6b | (-.f64 1 (*.f64 2 (/.f64 x y))) |
| ▶ | 41.1b | (-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
| ✓ | 53.9b | (*.f64 x 1/2) |
| ✓ | 30.1b | (neg.f64 (/.f64 y (-.f64 2 y))) |
| ▶ | 55.5b | (neg.f64 (+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2)))) |
| ▶ | 55.1b | (neg.f64 (*.f64 1/2 y)) |
| 37.9b | 1 | |
| 41.3b | -1 |
Compiled 154 to 118 computations (23.4% saved)
Compiled 13 to 10 computations (23.1% saved)
Compiled 11 to 8 computations (27.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (neg.f64 y)) |
Compiled 15 to 5 computations (66.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (/.f64 (-.f64 x y) (neg.f64 y)) |
| 0.0ms | y | @ | inf | (/.f64 (-.f64 x y) (neg.f64 y)) |
| 0.0ms | x | @ | inf | (/.f64 (-.f64 x y) (neg.f64 y)) |
| 0.0ms | y | @ | 0 | (/.f64 (-.f64 x y) (neg.f64 y)) |
| 0.0ms | x | @ | -inf | (/.f64 (-.f64 x y) (neg.f64 y)) |
| 1× | batch-egg-rewrite |
| 1614× | rational.json-1 |
| 1614× | rational.json-2 |
| 1614× | rational.json-3 |
| 1612× | rational.json-5 |
| 1610× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 17 |
| 1 | 70 | 17 |
| 2 | 244 | 17 |
| 3 | 847 | 17 |
| 4 | 3244 | 17 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 x y) (neg.f64 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 (-.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y)))))))) |
| 1× | egg-herbie |
| 1032× | rational.json-simplify-2 |
| 984× | rational.json-simplify-50 |
| 796× | rational.json-simplify-54 |
| 712× | rational.json-simplify-104 |
| 532× | rational.json-simplify-39 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 35 | 622 |
| 1 | 59 | 580 |
| 2 | 118 | 580 |
| 3 | 418 | 508 |
| 4 | 1801 | 508 |
| 5 | 4486 | 508 |
| 6 | 7175 | 508 |
| 1× | node limit |
| Inputs |
|---|
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(*.f64 -1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(*.f64 -1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(*.f64 -1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0) |
(+.f64 0 (/.f64 (-.f64 x y) (neg.f64 y))) |
(-.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y)))) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) |
(*.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 (-.f64 x y) (neg.f64 y))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y)))) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))))) |
(pow.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y)))) |
| Outputs |
|---|
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(*.f64 -1 (/.f64 x y)) |
(neg.f64 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(*.f64 -1 (/.f64 x y)) |
(neg.f64 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(*.f64 -1 (/.f64 x y)) |
(neg.f64 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
1 |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 1 (*.f64 -1 (/.f64 x y))) |
(+.f64 1 (neg.f64 (/.f64 x y))) |
(-.f64 1 (/.f64 x y)) |
(+.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(+.f64 0 (/.f64 (-.f64 x y) (neg.f64 y))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 0) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 0 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y)))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (/.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 (-.f64 x y) (neg.f64 y))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))) (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y)))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y))))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x y) (neg.f64 y))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (*.f64 (/.f64 (-.f64 x y) (neg.f64 y)) (/.f64 (-.f64 x y) (neg.f64 y)))))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(pow.f64 (/.f64 (-.f64 x y) (neg.f64 y)) 1) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(neg.f64 (neg.f64 (/.f64 (-.f64 x y) (neg.f64 y)))) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 (/.f64 1 x) (/.f64 y x)) |
Compiled 40 to 23 computations (42.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | -inf | (-.f64 (/.f64 1 x) (/.f64 y x)) |
| 1.0ms | x | @ | 0 | (-.f64 (/.f64 1 x) (/.f64 y x)) |
| 1.0ms | y | @ | 0 | (-.f64 (/.f64 1 x) (/.f64 y x)) |
| 0.0ms | y | @ | inf | (-.f64 (/.f64 1 x) (/.f64 y x)) |
| 0.0ms | y | @ | -inf | (-.f64 (/.f64 1 x) (/.f64 y x)) |
| 1× | batch-egg-rewrite |
| 1540× | rational.json-5 |
| 1538× | exponential.json-3 |
| 1538× | rational.json-1 |
| 1538× | rational.json-2 |
| 1538× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 19 |
| 1 | 66 | 19 |
| 2 | 213 | 19 |
| 3 | 776 | 19 |
| 4 | 2989 | 19 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (/.f64 1 x) (/.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (/.f64 1 x) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (-.f64 -1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 y x) (/.f64 1 x))))))) |
| 1× | egg-herbie |
| 1462× | rational.json-simplify-49 |
| 1278× | rational.json-simplify-2 |
| 1094× | rational.json-simplify-50 |
| 892× | rational.json-simplify-43 |
| 884× | rational.json-simplify-58 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 55 | 1127 |
| 1 | 97 | 829 |
| 2 | 294 | 829 |
| 3 | 1643 | 829 |
| 4 | 5776 | 829 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 1 x) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(*.f64 -1 (/.f64 y x)) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(*.f64 -1 (/.f64 y x)) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)) |
(+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 0) |
(+.f64 0 (-.f64 (/.f64 1 x) (/.f64 y x))) |
(+.f64 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) 1) |
(*.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) |
(*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(*.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x))) |
(*.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x)))) |
(*.f64 (neg.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (-.f64 -1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1))) |
(*.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) |
(*.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x))) |
(*.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))) |
(*.f64 (*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))) |
(/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(/.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1) |
(pow.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(neg.f64 (-.f64 (/.f64 y x) (/.f64 1 x))) |
| Outputs |
|---|
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 (+.f64 1 (*.f64 -1 y)) x) |
(/.f64 (-.f64 1 y) x) |
(/.f64 1 x) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(*.f64 -1 (/.f64 y x)) |
(neg.f64 (/.f64 y x)) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(*.f64 -1 (/.f64 y x)) |
(neg.f64 (/.f64 y x)) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (*.f64 -1 (/.f64 y x))) |
(+.f64 (/.f64 1 x) (neg.f64 (/.f64 y x))) |
(+.f64 1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1)) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 0) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(+.f64 0 (-.f64 (/.f64 1 x) (/.f64 y x))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(+.f64 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) 1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))) (/.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (neg.f64 (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (-.f64 -1 (-.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 -1 (-.f64 (/.f64 y x) (/.f64 1 x))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(*.f64 (*.f64 (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 (/.f64 1 x) (/.f64 y x))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (*.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x))))))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (/.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(/.f64 (-.f64 (/.f64 y x) (/.f64 1 x)) -1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(pow.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) 1) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
(neg.f64 (-.f64 (/.f64 y x) (/.f64 1 x))) |
(+.f64 1 (+.f64 (-.f64 (/.f64 1 x) (/.f64 y x)) -1)) |
(-.f64 (/.f64 1 x) (/.f64 y x)) |
Compiled 36 to 28 computations (22.2% saved)
Compiled 1029 to 503 computations (51.1% saved)
15 alts after pruning (4 fresh and 11 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 51 | 2 | 53 |
| Fresh | 0 | 2 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 10 | 11 |
| Total | 52 | 15 | 67 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
| ✓ | 21.8b | (/.f64 (-.f64 x y) (-.f64 2 y)) |
| ✓ | 37.9b | (/.f64 (-.f64 x y) (neg.f64 y)) |
| ✓ | 32.8b | (/.f64 x (-.f64 2 x)) |
| ✓ | 41.1b | (-.f64 (/.f64 y x) 1) |
| 37.9b | (-.f64 1 (/.f64 x y)) | |
| ✓ | 37.9b | (-.f64 1 (/.f64 -2 y)) |
| ✓ | 37.6b | (-.f64 1 (*.f64 2 (/.f64 x y))) |
| 41.1b | (-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))) | |
| ✓ | 53.9b | (*.f64 x 1/2) |
| ✓ | 30.1b | (neg.f64 (/.f64 y (-.f64 2 y))) |
| ✓ | 55.5b | (neg.f64 (+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2)))) |
| ✓ | 55.1b | (neg.f64 (*.f64 1/2 y)) |
| 37.9b | 1 | |
| 41.3b | -1 |
Compiled 112 to 85 computations (24.1% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 1 (*.f64 2 (/.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))) |
(-.f64 1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) |
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 (-.f64 2 x) y)) |
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 x) (/.f64 y x)))) |
(neg.f64 (+.f64 (*.f64 1/2 y) (*.f64 1/4 (pow.f64 y 2)))) |
(+.f64 (*.f64 x 1/2) (*.f64 (+.f64 1/2 (*.f64 x -1/4)) (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (neg.f64 y)))) |
(+.f64 (/.f64 x (-.f64 2 x)) (neg.f64 (+.f64 (*.f64 y (+.f64 (/.f64 1 (-.f64 2 x)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 2))))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (-.f64 2 x) 2)) (neg.f64 (/.f64 x (pow.f64 (-.f64 2 x) 3)))) (pow.f64 y 2))))) |
| Outputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
3 calls:
| 14.0ms | x |
| 12.0ms | y |
| 9.0ms | (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
Compiled 198 to 131 computations (33.8% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 1 (*.f64 2 (/.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))) |
(-.f64 1 (/.f64 (-.f64 (*.f64 2 x) 2) y)) |
| Outputs |
|---|
(/.f64 x (-.f64 2 x)) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))) |
2 calls:
| 33.0ms | y |
| 30.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 8.1b | 3 | x |
| 13.5b | 3 | y |
Compiled 86 to 54 computations (37.2% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 10.0ms | 3.803315564808297e+78 | 7.80653788816585e+78 |
| 24.0ms | -3250.92273838339 | -1.4944144197141334e-20 |
| 29.0ms | 256× | body | 256 | valid |
Compiled 319 to 234 computations (26.6% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 1 (*.f64 2 (/.f64 x y))) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
| Outputs |
|---|
(/.f64 x (-.f64 2 x)) |
(/.f64 (-.f64 x y) (-.f64 2 y)) |
(-.f64 (/.f64 y x) 1) |
2 calls:
| 48.0ms | y |
| 31.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 8.1b | 3 | x |
| 12.5b | 5 | y |
Compiled 69 to 42 computations (39.1% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 10.0ms | 3.803315564808297e+78 | 7.80653788816585e+78 |
| 23.0ms | -3250.92273838339 | -1.4944144197141334e-20 |
| 29.0ms | 256× | body | 256 | valid |
Compiled 304 to 219 computations (28% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
(-.f64 1 (*.f64 2 (/.f64 x y))) |
| Outputs |
|---|
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(-.f64 1 (*.f64 2 (/.f64 x y))) |
2 calls:
| 41.0ms | x |
| 41.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 14.4b | 5 | x |
| 12.5b | 5 | y |
Compiled 62 to 39 computations (37.1% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 18.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 13.0ms | 5.179823039325543e+61 | 1.5438454564607346e+63 |
| 17.0ms | 13856.310819392706 | 5103765.852184418 |
| 19.0ms | -2.8218094717020097e-17 | -5.174398302422652e-33 |
| 57.0ms | 544× | body | 256 | valid |
Compiled 603 to 462 computations (23.4% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
| Outputs |
|---|
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(/.f64 (-.f64 x y) (neg.f64 y)) |
2 calls:
| 181.0ms | x |
| 156.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 14.5b | 5 | x |
| 12.7b | 5 | y |
Compiled 55 to 35 computations (36.4% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 22.0ms | 5.179823039325543e+61 | 1.5438454564607346e+63 |
| 22.0ms | 13856.310819392706 | 5103765.852184418 |
| 30.0ms | -2.8218094717020097e-17 | -5.174398302422652e-33 |
| 84.0ms | 544× | body | 256 | valid |
Compiled 594 to 444 computations (25.3% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 (-.f64 x y) (neg.f64 x)) |
| Outputs |
|---|
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(neg.f64 (/.f64 y (-.f64 2 y))) |
(/.f64 x (-.f64 2 x)) |
(-.f64 1 (/.f64 x y)) |
2 calls:
| 56.0ms | y |
| 55.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 14.5b | 5 | x |
| 12.7b | 5 | y |
Compiled 49 to 33 computations (32.7% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 25.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 18.0ms | 5.179823039325543e+61 | 1.5438454564607346e+63 |
| 122.0ms | 13856.310819392706 | 5103765.852184418 |
| 30.0ms | -2.8218094717020097e-17 | -5.174398302422652e-33 |
| 180.0ms | 544× | body | 256 | valid |
Compiled 585 to 444 computations (24.1% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(/.f64 x (-.f64 2 x)) |
| Outputs |
|---|
(-.f64 1 (/.f64 x y)) |
(/.f64 x (-.f64 2 x)) |
(-.f64 1 (/.f64 -2 y)) |
(/.f64 x (-.f64 2 x)) |
(-.f64 1 (/.f64 x y)) |
2 calls:
| 122.0ms | y |
| 73.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 20.2b | 7 | x |
| 13.4b | 5 | y |
Compiled 37 to 26 computations (29.7% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 21.0ms | 5.179823039325543e+61 | 1.5438454564607346e+63 |
| 23.0ms | 13856.310819392706 | 5103765.852184418 |
| 29.0ms | -3.715618331058264e+45 | -2.817813089366144e+34 |
| 83.0ms | 544× | body | 256 | valid |
Compiled 560 to 434 computations (22.5% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
| Outputs |
|---|
(-.f64 1 (/.f64 x y)) |
(-.f64 (/.f64 y x) 1) |
(*.f64 x 1/2) |
-1 |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 (/.f64 y x) 1) |
(-.f64 1 (/.f64 x y)) |
2 calls:
| 280.0ms | x |
| 173.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 20.8b | 7 | x |
| 18.3b | 7 | y |
Compiled 32 to 23 computations (28.1% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 146.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 24.0ms | 5.179823039325543e+61 | 1.5438454564607346e+63 |
| 25.0ms | 13856.310819392706 | 5103765.852184418 |
| 130.0ms | 6.915421340836734e-279 | 2.458068870215383e-275 |
| 21.0ms | -1.586264385980621e-217 | -7.043510864432866e-220 |
| 28.0ms | -3.715618331058264e+45 | -2.817813089366144e+34 |
| 246.0ms | 784× | body | 256 | valid |
Compiled 706 to 567 computations (19.7% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
(-.f64 1 (/.f64 x y)) |
| Outputs |
|---|
(-.f64 1 (/.f64 x y)) |
-1 |
(*.f64 x 1/2) |
-1 |
(-.f64 1 (/.f64 -2 y)) |
-1 |
(-.f64 1 (/.f64 x y)) |
2 calls:
| 161.0ms | x |
| 72.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 20.9b | 7 | x |
| 18.4b | 7 | y |
Compiled 27 to 20 computations (25.9% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 24.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 224.0ms | 9.123159965727868e+75 | 1.128799523281576e+79 |
| 26.0ms | 13856.310819392706 | 5103765.852184418 |
| 25.0ms | 6.915421340836734e-279 | 2.458068870215383e-275 |
| 21.0ms | -1.586264385980621e-217 | -7.043510864432866e-220 |
| 154.0ms | -3.715618331058264e+45 | -2.817813089366144e+34 |
| 253.0ms | 800× | body | 256 | valid |
Compiled 586 to 512 computations (12.6% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
(-.f64 1 (/.f64 -2 y)) |
| Outputs |
|---|
1 |
-1 |
(*.f64 x 1/2) |
-1 |
(-.f64 1 (/.f64 -2 y)) |
-1 |
1 |
2 calls:
| 240.0ms | x |
| 54.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 21.0b | 7 | x |
| 18.5b | 7 | y |
Compiled 22 to 17 computations (22.7% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 75.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 25.0ms | 9.123159965727868e+75 | 1.128799523281576e+79 |
| 24.0ms | 13856.310819392706 | 5103765.852184418 |
| 24.0ms | 6.915421340836734e-279 | 2.458068870215383e-275 |
| 20.0ms | -1.586264385980621e-217 | -7.043510864432866e-220 |
| 32.0ms | -5.790057229134993e+21 | -14358253512.468233 |
| 178.0ms | 800× | body | 256 | valid |
Compiled 510 to 474 computations (7.1% saved)
| Inputs |
|---|
-1 |
1 |
(*.f64 x 1/2) |
(neg.f64 (*.f64 1/2 y)) |
| Outputs |
|---|
1 |
-1 |
(*.f64 x 1/2) |
-1 |
1 |
-1 |
1 |
2 calls:
| 184.0ms | y |
| 48.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 21.1b | 7 | x |
| 18.7b | 7 | y |
Compiled 17 to 13 computations (23.5% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 23.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 86.0ms | 9.123159965727868e+75 | 1.128799523281576e+79 |
| 23.0ms | 13856.310819392706 | 5103765.852184418 |
| 42.0ms | 6.915421340836734e-279 | 2.458068870215383e-275 |
| 22.0ms | -1.586264385980621e-217 | -7.043510864432866e-220 |
| 20.0ms | -5.790057229134993e+21 | -14358253512.468233 |
| 196.0ms | 752× | body | 256 | valid |
Compiled 422 to 402 computations (4.7% saved)
Total -41.0b remaining (-187.5%)
Threshold costs -41.0b (-187.5%)
| Inputs |
|---|
-1 |
1 |
| Outputs |
|---|
1 |
-1 |
1 |
-1 |
1 |
2 calls:
| 260.0ms | y |
| 21.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 24.1b | 3 | x |
| 21.9b | 5 | y |
Compiled 10 to 8 computations (20% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 8.652453298683167e+95 | 6.364753981287976e+100 |
| 39.0ms | 9.123159965727868e+75 | 1.128799523281576e+79 |
| 51.0ms | 13856.310819392706 | 5103765.852184418 |
| 5.0ms | -5.790057229134993e+21 | -14358253512.468233 |
| 103.0ms | 400× | body | 256 | valid |
Compiled 216 to 211 computations (2.3% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 162 | 1017 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(if (<=.f64 x -235) (/.f64 x (-.f64 2 x)) (if (<=.f64 x 4799999999999999711668471417469365854520739126603949959748822566257452478627840) (/.f64 (-.f64 x y) (-.f64 2 y)) (-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))))) |
(if (<=.f64 x -3332663724254167/4503599627370496) (/.f64 x (-.f64 2 x)) (if (<=.f64 x 3900000000000000382794842022146125564911543999372148710821867947676628894613504) (/.f64 (-.f64 x y) (-.f64 2 y)) (-.f64 (/.f64 y x) 1))) |
(if (<=.f64 y -376441522243775/1298074214633706907132624082305024) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 230000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1449999999999999965147033883818244145671006441105813288305819648) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (-.f64 1 (*.f64 2 (/.f64 x y))))))) |
(if (<=.f64 y -4984604984193435/664613997892457936451903530140172288) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 210000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1279999999999999935215533180254744149713465614097164893547397120) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (/.f64 (-.f64 x y) (neg.f64 y)))))) |
(if (<=.f64 y -4253529586511731/1329227995784915872903807060280344576) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 3150000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1449999999999999965147033883818244145671006441105813288305819648) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 1050000000000000058283291639454926873547616342155206141241060792023384697874499407358834203688960) (/.f64 x (-.f64 2 x)) (-.f64 1 (/.f64 x y)))))) |
(if (<=.f64 y -157999999999999992546147141532776622052081664) (-.f64 1 (/.f64 x y)) (if (<=.f64 y 4200000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 280000000000000014373351737299922903915539992073657548118425600) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (-.f64 1 (/.f64 x y)))))) |
(if (<=.f64 y -28499999999999998737124459282432000) (-.f64 1 (/.f64 x y)) (if (<=.f64 y -6677069811366889/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) (-.f64 (/.f64 y x) 1) (if (<=.f64 y 5388768835743743/9979201547673599058281863565184192830337256302177287707512736212186059459344820328924789827463178505446712234220962476219862189941967968303695858991424157101600028364755428382587688607221814935913266783722719619966654052275604351944444276342240220787535604534378780208211792476151720049639424) (*.f64 x 1/2) (if (<=.f64 y 48000) -1 (if (<=.f64 y 114999999999999992038649020104572348113390222092299453830529024) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (-.f64 (/.f64 y x) 1) (-.f64 1 (/.f64 x y)))))))) |
(if (<=.f64 y -1649999999999999929798796706937044992) (-.f64 1 (/.f64 x y)) (if (<=.f64 y -4578562156365867/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) -1 (if (<=.f64 y 7584193176231935/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 x 1/2) (if (<=.f64 y 530000) -1 (if (<=.f64 y 10999999999999999476365626775134466929524125711579927406319040517138317209239552) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 (-.f64 1 (/.f64 x y)))))))) |
(if (<=.f64 y -2600000000000) 1 (if (<=.f64 y -943931000118831/99361157907245371849534687261600163536440705095468583112899330433667260971928120725176218165033374588831214764616388685194981122823348121052434385602635592909085118465334393955216978280422300468816831948397854000057142198644227702784) -1 (if (<=.f64 y 5925150918931199/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 x 1/2) (if (<=.f64 y 950000) -1 (if (<=.f64 y 320000000000000015059243038689750268529907245051732184456918705116743985004544) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 1)))))) |
(if (<=.f64 y -4000000000000000000) 1 (if (<=.f64 y -5087291284850963/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) -1 (if (<=.f64 y 6546356215273881/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 x 1/2) (if (<=.f64 y 5000000) -1 (if (<=.f64 y 10999999999999999476365626775134466929524125711579927406319040517138317209239552) 1 (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 1)))))) |
(if (<=.f64 y -5000000000000000000000) 1 (if (<=.f64 y 5000000) -1 (if (<=.f64 y 3500000000000000132571709850489338051206618645930068717053488461558530629959680) 1 (if (<=.f64 y 1000000000000000049861653971908893017010268485438462151574892930611988399099305815384459015356416) -1 1)))) |
-1 |
| Outputs |
|---|
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) |
(if (<=.f64 x -235) (/.f64 x (-.f64 2 x)) (if (<=.f64 x 4799999999999999711668471417469365854520739126603949959748822566257452478627840) (/.f64 (-.f64 x y) (-.f64 2 y)) (-.f64 -1 (*.f64 2 (neg.f64 (/.f64 y x)))))) |
(if (<=.f64 x -3332663724254167/4503599627370496) (/.f64 x (-.f64 2 x)) (if (<=.f64 x 3900000000000000382794842022146125564911543999372148710821867947676628894613504) (/.f64 (-.f64 x y) (-.f64 2 y)) (-.f64 (/.f64 y x) 1))) |
(if (<=.f64 y -376441522243775/1298074214633706907132624082305024) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 230000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1449999999999999965147033883818244145671006441105813288305819648) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (-.f64 1 (*.f64 2 (/.f64 x y))))))) |
(if (<=.f64 y -4984604984193435/664613997892457936451903530140172288) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 210000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1279999999999999935215533180254744149713465614097164893547397120) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (/.f64 (-.f64 x y) (neg.f64 y)))))) |
(if (<=.f64 y -4253529586511731/1329227995784915872903807060280344576) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 3150000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 1449999999999999965147033883818244145671006441105813288305819648) (neg.f64 (/.f64 y (-.f64 2 y))) (if (<=.f64 y 1050000000000000058283291639454926873547616342155206141241060792023384697874499407358834203688960) (/.f64 x (-.f64 2 x)) (-.f64 1 (/.f64 x y)))))) |
(if (<=.f64 y -157999999999999992546147141532776622052081664) (-.f64 1 (/.f64 x y)) (if (<=.f64 y 4200000) (/.f64 x (-.f64 2 x)) (if (<=.f64 y 280000000000000014373351737299922903915539992073657548118425600) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (/.f64 x (-.f64 2 x)) (-.f64 1 (/.f64 x y)))))) |
(if (<=.f64 y -28499999999999998737124459282432000) (-.f64 1 (/.f64 x y)) (if (<=.f64 y -6677069811366889/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) (-.f64 (/.f64 y x) 1) (if (<=.f64 y 5388768835743743/9979201547673599058281863565184192830337256302177287707512736212186059459344820328924789827463178505446712234220962476219862189941967968303695858991424157101600028364755428382587688607221814935913266783722719619966654052275604351944444276342240220787535604534378780208211792476151720049639424) (*.f64 x 1/2) (if (<=.f64 y 48000) -1 (if (<=.f64 y 114999999999999992038649020104572348113390222092299453830529024) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (-.f64 (/.f64 y x) 1) (-.f64 1 (/.f64 x y)))))))) |
(if (<=.f64 y -1649999999999999929798796706937044992) (-.f64 1 (/.f64 x y)) (if (<=.f64 y -4578562156365867/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) -1 (if (<=.f64 y 7584193176231935/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 x 1/2) (if (<=.f64 y 530000) -1 (if (<=.f64 y 10999999999999999476365626775134466929524125711579927406319040517138317209239552) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 (-.f64 1 (/.f64 x y)))))))) |
(if (<=.f64 y -2600000000000) 1 (if (<=.f64 y -943931000118831/99361157907245371849534687261600163536440705095468583112899330433667260971928120725176218165033374588831214764616388685194981122823348121052434385602635592909085118465334393955216978280422300468816831948397854000057142198644227702784) -1 (if (<=.f64 y 5925150918931199/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 x 1/2) (if (<=.f64 y 950000) -1 (if (<=.f64 y 320000000000000015059243038689750268529907245051732184456918705116743985004544) (-.f64 1 (/.f64 -2 y)) (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 1)))))) |
(if (<=.f64 y -4000000000000000000) 1 (if (<=.f64 y -5087291284850963/6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176) -1 (if (<=.f64 y 6546356215273881/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 x 1/2) (if (<=.f64 y 5000000) -1 (if (<=.f64 y 10999999999999999476365626775134466929524125711579927406319040517138317209239552) 1 (if (<=.f64 y 879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) -1 1)))))) |
(if (<=.f64 y -5000000000000000000000) 1 (if (<=.f64 y 5000000) -1 (if (<=.f64 y 3500000000000000132571709850489338051206618645930068717053488461558530629959680) 1 (if (<=.f64 y 1000000000000000049861653971908893017010268485438462151574892930611988399099305815384459015356416) -1 1)))) |
-1 |
Compiled 451 to 322 computations (28.6% saved)
Compiled 427 to 289 computations (32.3% saved)
Loading profile data...