Time bar (total: 4.6s)
| 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 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 6 |
| 12.5% | 12.5% | 87.4% | 0.1% | 0% | 0% | 0% | 7 |
| 18.8% | 18.7% | 81.1% | 0.1% | 0% | 0% | 0% | 8 |
| 25.8% | 25% | 71.8% | 0.1% | 3.1% | 0% | 0% | 9 |
| 36.4% | 34.3% | 60.1% | 0.1% | 5.5% | 0% | 0% | 10 |
| 44.5% | 41.3% | 51.5% | 0.1% | 7% | 0% | 0% | 11 |
| 51.5% | 46.8% | 44.1% | 0.1% | 9% | 0% | 0% | 12 |
Compiled 13 to 9 computations (30.8% saved)
| 857.0ms | 8256× | body | 256 | valid |
| 124.0ms | 1287× | body | 256 | infinite |
| 2× | egg-herbie |
| 1792× | rational_best_oopsla_all_46_json_45_simplify-23 |
| 1040× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 1018× | rational_best_oopsla_all_46_json_45_simplify-13 |
| 1000× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 784× | rational_best_oopsla_all_46_json_45_simplify-74 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 100 |
| 1 | 64 | 100 |
| 2 | 233 | 100 |
| 3 | 923 | 100 |
| 4 | 4359 | 100 |
| 0 | 3 | 3 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
| Outputs |
|---|
0 |
1 |
2 |
| Inputs |
|---|
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
(+.f64 (*.f64 (-.f64 1 y) x) (*.f64 y z)) |
(+.f64 (*.f64 (-.f64 1 z) y) (*.f64 z x)) |
(+.f64 (*.f64 (-.f64 1 x) z) (*.f64 x y)) |
| Outputs |
|---|
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
(+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
(+.f64 (*.f64 (-.f64 1 y) x) (*.f64 y z)) |
(+.f64 (*.f64 x (-.f64 1 y)) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 x y)) (*.f64 y z)) |
(+.f64 (*.f64 (-.f64 1 z) y) (*.f64 z x)) |
(+.f64 (*.f64 y (-.f64 1 z)) (*.f64 x z)) |
(-.f64 (+.f64 y (*.f64 x z)) (*.f64 y z)) |
(+.f64 (-.f64 y (*.f64 y z)) (*.f64 x z)) |
(+.f64 (*.f64 (-.f64 1 x) z) (*.f64 x y)) |
(-.f64 (+.f64 z (*.f64 x y)) (*.f64 x z)) |
(+.f64 (-.f64 z (*.f64 x z)) (*.f64 x y)) |
Compiled 15 to 11 computations (26.7% saved)
| 1× | egg-herbie |
| 1362× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 1308× | rational_best_oopsla_all_46_json_45_simplify-37 |
| 1094× | rational_best_oopsla_all_46_json_45_simplify-74 |
| 898× | rational_best_oopsla_all_46_json_45_simplify-24 |
| 710× | rational_best_oopsla_all_46_json_45_simplify-10 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 25 |
| 1 | 21 | 25 |
| 2 | 73 | 25 |
| 3 | 283 | 25 |
| 4 | 1268 | 25 |
| 5 | 5728 | 25 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
| Outputs |
|---|
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
(+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
Compiled 21 to 11 computations (47.6% 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 y (*.f64 x y)) (*.f64 x z)) |
Compiled 12 to 7 computations (41.7% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 y (*.f64 x y)) |
| ✓ | 0.0b | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
Compiled 26 to 7 computations (73.1% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| 0.0ms | y | @ | inf | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| 0.0ms | y | @ | 0 | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| 0.0ms | x | @ | -inf | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| 0.0ms | x | @ | 0 | (+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| 1× | batch-egg-rewrite |
| 1930× | rational_best_oopsla_all_46_json-2 |
| 1930× | rational_best_oopsla_all_46_json-1 |
| 1930× | rational_best_oopsla_all_46_json-4 |
| 1930× | rational_best_oopsla_all_46_json-3 |
| 700× | rational_best_oopsla_all_46_json_45_simplify-35 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 38 |
| 1 | 57 | 38 |
| 2 | 192 | 38 |
| 3 | 884 | 38 |
| 4 | 4155 | 38 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
(-.f64 y (*.f64 x y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 y (-.f64 (*.f64 y x) (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y (*.f64 y x)) (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x z) (-.f64 (*.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (neg.f64 (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x z) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y x) -1) (*.f64 -1 (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 1 (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (*.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 x (neg.f64 y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y (*.f64 y x)) 0) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) -1) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y))) (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 x (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 x) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 y (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 x (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (+.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 (*.f64 x (/.f64 y y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 -1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 -1 (*.f64 x (neg.f64 (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 x) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 (*.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y x) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y x) y)))))) |
| 1× | egg-herbie |
| 1504× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 1208× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 690× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 574× | rational_best_oopsla_all_46_json_45_simplify-74 |
| 564× | rational_best_oopsla_all_46_json_45_simplify-24 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 196 | 2806 |
| 1 | 789 | 2436 |
| 2 | 4473 | 2436 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(*.f64 y (-.f64 1 x)) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
y |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(*.f64 (-.f64 z y) x) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(-.f64 y (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
y |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(-.f64 y (-.f64 (*.f64 y x) (*.f64 x z))) |
(-.f64 (-.f64 y (*.f64 y x)) (*.f64 z (neg.f64 x))) |
(-.f64 (*.f64 x z) (-.f64 (*.f64 y x) y)) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0)) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) 0)) |
(-.f64 0 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(-.f64 0 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (+.f64 y (*.f64 x z)))) |
(-.f64 (*.f64 (*.f64 x z) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) y))) |
(-.f64 (*.f64 0 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))) |
(-.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 y x))) |
(-.f64 (*.f64 (*.f64 y x) -1) (*.f64 -1 (+.f64 y (*.f64 x z)))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) |
(*.f64 -1 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(*.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1) |
(*.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(*.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(*.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(*.f64 (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(/.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1) |
(neg.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(neg.f64 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(+.f64 y (*.f64 x (neg.f64 y))) |
(+.f64 y (*.f64 1 (*.f64 x (neg.f64 y)))) |
(+.f64 y (*.f64 (*.f64 y x) -1)) |
(+.f64 (-.f64 y (*.f64 y x)) 0) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) 0)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(+.f64 0 (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 x (neg.f64 y)) y) |
(+.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 1 (*.f64 x (neg.f64 y))) y) |
(+.f64 (*.f64 (-.f64 y (*.f64 y x)) 0) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 (*.f64 y x) -1) y) |
(+.f64 (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y)))) |
(+.f64 (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y))) (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (*.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y))) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y))))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y))))) |
(*.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 1 (-.f64 y (*.f64 y x))) |
(*.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 (neg.f64 y) (+.f64 x -1)) |
(*.f64 (neg.f64 y) (-.f64 (*.f64 x (/.f64 y y)) 1)) |
(*.f64 (neg.f64 y) (-.f64 -1 (neg.f64 x))) |
(*.f64 (neg.f64 y) (-.f64 -1 (*.f64 x (neg.f64 (/.f64 y y))))) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x))) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))) |
(*.f64 -1 (-.f64 (*.f64 y x) y)) |
(*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 (-.f64 1 x) y) |
(*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y) |
(*.f64 (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 (*.f64 y x) y)) |
(/.f64 (-.f64 y (*.f64 y x)) 1) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 y y)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(/.f64 (-.f64 (*.f64 y x) y) -1) |
(neg.f64 (-.f64 (*.f64 y x) y)) |
| Outputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
y |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 (-.f64 (*.f64 z -1) (neg.f64 y)) (neg.f64 x)) |
(*.f64 (*.f64 -1 (-.f64 z y)) (neg.f64 x)) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(+.f64 y (*.f64 (-.f64 (*.f64 z -1) (neg.f64 y)) (neg.f64 x))) |
(+.f64 y (*.f64 (*.f64 -1 (-.f64 z y)) (neg.f64 x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(+.f64 y (*.f64 (-.f64 (*.f64 z -1) (neg.f64 y)) (neg.f64 x))) |
(+.f64 y (*.f64 (*.f64 -1 (-.f64 z y)) (neg.f64 x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x))) |
(+.f64 y (*.f64 (-.f64 (*.f64 z -1) (neg.f64 y)) (neg.f64 x))) |
(+.f64 y (*.f64 (*.f64 -1 (-.f64 z y)) (neg.f64 x))) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
y |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(*.f64 x (neg.f64 y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(*.f64 x (neg.f64 y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(-.f64 y (-.f64 (*.f64 y x) (*.f64 x z))) |
(-.f64 y (*.f64 x (-.f64 y z))) |
(-.f64 (-.f64 y (*.f64 y x)) (*.f64 z (neg.f64 x))) |
(-.f64 (-.f64 y (*.f64 x y)) (*.f64 z (neg.f64 x))) |
(-.f64 (-.f64 y (*.f64 x y)) (*.f64 x (neg.f64 z))) |
(-.f64 (*.f64 x z) (-.f64 (*.f64 y x) y)) |
(-.f64 y (*.f64 x (-.f64 y z))) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 0)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) 0)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 0 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 0 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 (*.f64 x z) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) y))) |
(*.f64 (/.f64 (+.f64 y (-.f64 (*.f64 z x) (*.f64 x y))) (+.f64 y (-.f64 (*.f64 z x) (*.f64 x y)))) (-.f64 y (*.f64 x (-.f64 y z)))) |
(*.f64 (-.f64 y (*.f64 x (-.f64 y z))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 0 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 (*.f64 y x) -1) (*.f64 -1 (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 -1 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (*.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (*.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (neg.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) 1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (/.f64 (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))) (/.f64 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)) (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z))) -1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(neg.f64 (-.f64 (*.f64 y x) (+.f64 y (*.f64 x z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(neg.f64 (*.f64 -1 (-.f64 (+.f64 y (*.f64 x z)) (*.f64 y x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 y (*.f64 x (neg.f64 y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 1 (*.f64 x (neg.f64 y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 y (*.f64 (*.f64 y x) -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (-.f64 y (*.f64 y x)) 0) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) 0)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 0 (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 x (neg.f64 y)) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) 0) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 1 (*.f64 x (neg.f64 y))) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 (-.f64 y (*.f64 y x)) 0) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 (*.f64 y x) -1) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 0 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 x (neg.f64 y))) (*.f64 y (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (*.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (/.f64 y y))))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 1 (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (neg.f64 y) (+.f64 x -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (neg.f64 y) (-.f64 (*.f64 x (/.f64 y y)) 1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (neg.f64 y) (-.f64 -1 (neg.f64 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (neg.f64 y) (-.f64 -1 (*.f64 x (neg.f64 (/.f64 y y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 -1 (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 1 x) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(*.f64 (neg.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(/.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 y y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(/.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(neg.f64 (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
Compiled 2317 to 383 computations (83.5% saved)
6 alts after pruning (6 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 114 | 6 | 120 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 115 | 6 | 121 |
| Status | Error | Program |
|---|---|---|
| ▶ | 23.5b | (-.f64 y (*.f64 y x)) |
| ▶ | 0.0b | (-.f64 y (*.f64 x (-.f64 y z))) |
| ▶ | 28.3b | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| ▶ | 28.3b | (*.f64 (-.f64 z y) x) |
| ▶ | 39.4b | (*.f64 z x) |
| 34.7b | y |
Compiled 90 to 57 computations (36.7% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 x (-.f64 y z)) |
| ✓ | 0.0b | (-.f64 y (*.f64 x (-.f64 y z))) |
Compiled 21 to 6 computations (71.4% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | -inf | (-.f64 y (*.f64 x (-.f64 y z))) |
| 0.0ms | x | @ | -inf | (-.f64 y (*.f64 x (-.f64 y z))) |
| 0.0ms | y | @ | 0 | (-.f64 y (*.f64 x (-.f64 y z))) |
| 0.0ms | z | @ | inf | (-.f64 y (*.f64 x (-.f64 y z))) |
| 0.0ms | y | @ | inf | (-.f64 y (*.f64 x (-.f64 y z))) |
| 1× | batch-egg-rewrite |
| 1758× | rational_best_oopsla_all_46_json-2 |
| 1758× | rational_best_oopsla_all_46_json-1 |
| 1758× | rational_best_oopsla_all_46_json-4 |
| 1758× | rational_best_oopsla_all_46_json-3 |
| 1058× | rational_best_oopsla_all_46_json_45_simplify-72 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 32 |
| 1 | 54 | 32 |
| 2 | 208 | 32 |
| 3 | 929 | 32 |
| 4 | 3916 | 32 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 y (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (*.f64 x (-.f64 y z)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y (*.f64 x (-.f64 z y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (-.f64 y (*.f64 x (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) (*.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (-.f64 y z)) -1) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 x (neg.f64 z))) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x (-.f64 y z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x (-.f64 y z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (-.f64 (*.f64 x (-.f64 y z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x (-.f64 y z)) y)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x))) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x)))) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (*.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (-.f64 0 (*.f64 (*.f64 x z) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 z)) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 z)) (-.f64 0 (*.f64 (*.f64 x (neg.f64 y)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y x) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x z) -1) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (neg.f64 y)) -1) (*.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y x) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (-.f64 z y) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (-.f64 y z) (/.f64 x x)) (*.f64 (-.f64 y z) (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 x x) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 y z) x)) (*.f64 x (/.f64 (-.f64 y z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 z y))))))) |
| 1× | egg-herbie |
| 1170× | rational_best_oopsla_all_46_json_45_simplify-82 |
| 868× | rational_best_oopsla_all_46_json_45_simplify-72 |
| 792× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 666× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 530× | rational_best_oopsla_all_46_json_45_simplify-89 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 168 | 2815 |
| 1 | 609 | 2437 |
| 2 | 3049 | 2437 |
| 3 | 7914 | 2437 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(*.f64 y (-.f64 1 x)) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
y |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(*.f64 (-.f64 z y) x) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(*.f64 -1 (*.f64 (-.f64 y z) x)) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(-.f64 y (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 (-.f64 y z) x) |
(*.f64 -1 (*.f64 z x)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 -1 (*.f64 z x)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 -1 (*.f64 z x)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 y (*.f64 (*.f64 x (-.f64 y z)) -1)) |
(+.f64 (+.f64 y (*.f64 x (-.f64 z y))) 0) |
(+.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 0 (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 x z) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 x (neg.f64 y)) (-.f64 y (*.f64 x (neg.f64 z)))) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 x z)) |
(+.f64 (*.f64 x (-.f64 z y)) y) |
(+.f64 (*.f64 (*.f64 x (-.f64 y z)) -1) y) |
(+.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (-.f64 y (*.f64 x (neg.f64 z))) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 1 (+.f64 y (*.f64 x (-.f64 z y)))) |
(*.f64 -1 (-.f64 (*.f64 x (-.f64 y z)) y)) |
(*.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1) |
(*.f64 (-.f64 (*.f64 x (-.f64 y z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))) |
(*.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(*.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (-.f64 (*.f64 x (-.f64 y z)) y)) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(/.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1) |
(neg.f64 (-.f64 (*.f64 x (-.f64 y z)) y)) |
(+.f64 (*.f64 x (-.f64 y z)) 0) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x)))) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))))) |
(+.f64 0 (*.f64 x (-.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 x (neg.f64 z))) |
(+.f64 (*.f64 x (neg.f64 z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z))) |
(+.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (-.f64 y z))) |
(+.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 x (-.f64 y z))) |
(+.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x))) (*.f64 x (-.f64 y z))) |
(+.f64 (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x)))) (*.f64 x (-.f64 y z))) |
(+.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(-.f64 (*.f64 x (-.f64 y z)) 0) |
(-.f64 0 (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 y x) (*.f64 x z)) |
(-.f64 (*.f64 y x) (-.f64 0 (*.f64 (*.f64 x z) -1))) |
(-.f64 (*.f64 x (neg.f64 z)) (*.f64 x (neg.f64 y))) |
(-.f64 (*.f64 x (neg.f64 z)) (-.f64 0 (*.f64 (*.f64 x (neg.f64 y)) -1))) |
(-.f64 (*.f64 (*.f64 y x) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x z))) |
(-.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x (neg.f64 y)))) |
(-.f64 (*.f64 (*.f64 x z) -1) (*.f64 x (neg.f64 y))) |
(-.f64 (*.f64 (*.f64 x (neg.f64 y)) -1) (*.f64 x z)) |
(-.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) z)) |
(-.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (-.f64 z y))) |
(-.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 (*.f64 y x) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x z))) |
(-.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (neg.f64 y)))) |
(/.f64 (*.f64 x (-.f64 y z)) 1) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 x x)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (-.f64 z y) (-.f64 z y))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (-.f64 y z) (/.f64 x x)) (*.f64 (-.f64 y z) (/.f64 x x)))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 x x) (/.f64 x x))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 y z) x)) (*.f64 x (/.f64 (-.f64 y z) x)))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))))) |
(/.f64 (*.f64 x (-.f64 z y)) -1) |
(neg.f64 (*.f64 x (-.f64 z y))) |
| Outputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
y |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) x) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 -1 (*.f64 (-.f64 y z) x)) |
(*.f64 x (-.f64 z y)) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 y (*.f64 -1 (*.f64 (-.f64 y z) x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 x y)) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 z x) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(-.f64 (+.f64 (*.f64 z x) y) (*.f64 y x)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 (-.f64 y z) x) |
(*.f64 x (-.f64 y z)) |
(*.f64 -1 (*.f64 z x)) |
(neg.f64 (*.f64 z x)) |
(*.f64 x (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(*.f64 y x) |
(*.f64 x y) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(*.f64 y x) |
(*.f64 x y) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(*.f64 y x) |
(*.f64 x y) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(*.f64 -1 (*.f64 z x)) |
(neg.f64 (*.f64 z x)) |
(*.f64 x (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(*.f64 -1 (*.f64 z x)) |
(neg.f64 (*.f64 z x)) |
(*.f64 x (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 z x))) |
(*.f64 x (-.f64 y z)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 (*.f64 x (-.f64 y z)) -1)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (+.f64 y (*.f64 x (-.f64 z y))) 0) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 0 (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 x z) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 x (neg.f64 y)) (-.f64 y (*.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 x z)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 x (-.f64 z y)) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (*.f64 x (-.f64 y z)) -1) y) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (-.f64 y (*.f64 x (neg.f64 z))) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) (*.f64 y (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 1 (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 -1 (-.f64 (*.f64 x (-.f64 y z)) y)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 (*.f64 x (-.f64 y z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (*.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 1 (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (+.f64 y (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(*.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) (-.f64 (*.f64 x (-.f64 y z)) y)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) 1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (/.f64 (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))) (/.f64 (+.f64 y (*.f64 x (-.f64 z y))) (+.f64 y (*.f64 x (-.f64 z y)))))) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(/.f64 (-.f64 (*.f64 x (-.f64 y z)) y) -1) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(neg.f64 (-.f64 (*.f64 x (-.f64 y z)) y)) |
(+.f64 (*.f64 y (-.f64 1 x)) (*.f64 z x)) |
(+.f64 y (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 x (-.f64 y z)) 0) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x)))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 x (-.f64 y z)) (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))))) |
(*.f64 x (-.f64 y z)) |
(+.f64 0 (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 x (neg.f64 z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 x (neg.f64 z)) (*.f64 y x)) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z))) |
(*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (+.f64 y (neg.f64 z))) |
(+.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 y z) x))) (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 0 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x)))) (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 y z)) |
(+.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 z)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (+.f64 y (neg.f64 z))) |
(-.f64 (*.f64 x (-.f64 y z)) 0) |
(*.f64 x (-.f64 y z)) |
(-.f64 0 (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 y x) (*.f64 x z)) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 y x) (-.f64 0 (*.f64 (*.f64 x z) -1))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 x (neg.f64 z)) (*.f64 x (neg.f64 y))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 x (neg.f64 z)) (-.f64 0 (*.f64 (*.f64 x (neg.f64 y)) -1))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 y x) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x z))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 x (neg.f64 y)))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 x z) -1) (*.f64 x (neg.f64 y))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 x (neg.f64 y)) -1) (*.f64 x z)) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) z)) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 0 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (-.f64 z y))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (-.f64 z y)))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 y x) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x z))) |
(*.f64 x (-.f64 y z)) |
(-.f64 (*.f64 (*.f64 x (neg.f64 z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) (*.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (*.f64 x (neg.f64 y)))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) 1) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 x x)) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (-.f64 z y) (-.f64 z y))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (-.f64 y z) (/.f64 x x)) (*.f64 (-.f64 y z) (/.f64 x x)))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 x x) (/.f64 x x))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))) |
(*.f64 x (-.f64 y z)) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 x (/.f64 (-.f64 y z) x)) (*.f64 x (/.f64 (-.f64 y z) x)))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 (-.f64 y z) (/.f64 x x))))) |
(/.f64 (*.f64 x (-.f64 y z)) (/.f64 (*.f64 (-.f64 y z) (*.f64 (/.f64 x x) (/.f64 x x))) (*.f64 (-.f64 y z) (*.f64 (/.f64 x x) (/.f64 x x))))) |
(/.f64 (*.f64 x (-.f64 z y)) -1) |
(*.f64 x (-.f64 y z)) |
(neg.f64 (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 y z)) |
Compiled 8 to 4 computations (50% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (-.f64 z y) x) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (*.f64 (-.f64 z y) x) |
| 0.0ms | x | @ | -inf | (*.f64 (-.f64 z y) x) |
| 0.0ms | x | @ | 0 | (*.f64 (-.f64 z y) x) |
| 0.0ms | z | @ | 0 | (*.f64 (-.f64 z y) x) |
| 0.0ms | y | @ | inf | (*.f64 (-.f64 z y) x) |
| 1× | batch-egg-rewrite |
| 1726× | rational_best_oopsla_all_46_json-2 |
| 1726× | rational_best_oopsla_all_46_json-1 |
| 1724× | rational_best_oopsla_all_46_json-4 |
| 1724× | rational_best_oopsla_all_46_json-3 |
| 1158× | rational_best_oopsla_all_46_json_45_simplify-72 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 42 | 13 |
| 2 | 141 | 13 |
| 3 | 671 | 13 |
| 4 | 3406 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 z y) x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 x)) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y)) (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y)) (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y)) (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x))) (*.f64 (-.f64 z y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z)) (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 z y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z x) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (neg.f64 x)) (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (neg.f64 x)) (*.f64 (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 z x) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 z (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 x (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 z (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y x) -1) (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (-.f64 z y) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x x)) (*.f64 (-.f64 z y) (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 y z))))))) |
| 1× | egg-herbie |
| 742× | rational_best_oopsla_all_46_json_45_simplify-10 |
| 718× | rational_best_oopsla_all_46_json_45_simplify-30 |
| 694× | rational_best_oopsla_all_46_json_45_simplify-36 |
| 654× | rational_best_oopsla_all_46_json_45_simplify-23 |
| 570× | rational_best_oopsla_all_46_json_45_simplify-49 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 126 | 1907 |
| 1 | 454 | 1517 |
| 2 | 1978 | 1501 |
| 3 | 5277 | 1241 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 (-.f64 z y) x) 0) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)))) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x)))) |
(+.f64 0 (*.f64 (-.f64 z y) x)) |
(+.f64 (*.f64 z x) (*.f64 y (neg.f64 x))) |
(+.f64 (*.f64 z x) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y))) |
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 z x)) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z x)) |
(+.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y)) (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y))))) |
(+.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y))) |
(+.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (-.f64 z y) x)) |
(+.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y))) |
(+.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (-.f64 z y) x)) |
(+.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (-.f64 z y) x)) |
(+.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z))) |
(+.f64 (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y)) (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y)) (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x))) (*.f64 (-.f64 z y) x)) |
(+.f64 (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z)) (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)))) |
(-.f64 (*.f64 (-.f64 z y) x) 0) |
(-.f64 0 (*.f64 x (-.f64 y z))) |
(-.f64 (*.f64 z x) (*.f64 y x)) |
(-.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (*.f64 z (neg.f64 x))) |
(-.f64 (*.f64 y (neg.f64 x)) (*.f64 (neg.f64 z) x)) |
(-.f64 (*.f64 (*.f64 z x) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y x))) |
(-.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(-.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 z (neg.f64 x)))) |
(-.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) y)) |
(-.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (-.f64 y z))) |
(-.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) y)) |
(-.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (-.f64 y z))) |
(-.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 x (-.f64 y z)))) |
(-.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y x))) |
(-.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(-.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 z (neg.f64 x)))) |
(-.f64 (*.f64 (*.f64 y x) -1) (*.f64 z (neg.f64 x))) |
(-.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) z)) |
(/.f64 (*.f64 (-.f64 z y) x) 1) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (-.f64 z y) (-.f64 z y))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 x x)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x x)) (*.f64 (-.f64 z y) (/.f64 x x)))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)))) |
(/.f64 (*.f64 x (-.f64 y z)) -1) |
(neg.f64 (*.f64 x (-.f64 y z))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) 0) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) x) (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x)))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 0 (*.f64 (-.f64 z y) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 y (neg.f64 x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z x) (*.f64 x (neg.f64 y))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 z x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (neg.f64 y)) (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (-.f64 z y) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (-.f64 z y) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (-.f64 z y) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (neg.f64 y)) (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (neg.f64 y)) (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x x))) (*.f64 (-.f64 z y) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) (neg.f64 z)) (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 (-.f64 z y) x) 0) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 0 (*.f64 x (-.f64 y z))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 z x) (*.f64 y x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 y (neg.f64 x)) (*.f64 z (neg.f64 x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 y (neg.f64 x)) (*.f64 (neg.f64 z) x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 (*.f64 z x) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (*.f64 z (neg.f64 x)))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 z (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) y)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 0 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y)))) (*.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (-.f64 y z))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 z (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) y)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 0 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))))) (*.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (-.f64 y z))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 0 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 x (-.f64 y z)))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (neg.f64 (*.f64 x (-.f64 y z)))) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(-.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y x))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (neg.f64 (*.f64 x (-.f64 y z)))) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(-.f64 (*.f64 (*.f64 x (*.f64 z (/.f64 (-.f64 z y) (-.f64 z y)))) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 y (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (neg.f64 (*.f64 x (-.f64 y z)))) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(-.f64 (*.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) (*.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (*.f64 z (neg.f64 x)))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (neg.f64 (*.f64 x (-.f64 y z)))) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z)))) |
(-.f64 (*.f64 (*.f64 y x) -1) (*.f64 z (neg.f64 x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 y (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x))) (*.f64 (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (neg.f64 x)) z)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) 1) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (-.f64 z y) (-.f64 z y))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 x x)) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))) (*.f64 x (*.f64 (/.f64 (-.f64 z y) (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x x)) (*.f64 (-.f64 z y) (/.f64 x x)))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 (-.f64 z y) (/.f64 x x)) (*.f64 (-.f64 z y) (/.f64 x x)))) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))) (*.f64 (-.f64 z y) (/.f64 x (-.f64 z y))))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 (-.f64 z y) x) (/.f64 (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)) (/.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x)))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))) (/.f64 (*.f64 x (-.f64 y z)) (*.f64 x (-.f64 y z))))) |
(/.f64 (*.f64 x (-.f64 y z)) -1) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(neg.f64 (*.f64 x (-.f64 y z))) |
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 x z)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 y (*.f64 y x)) |
Compiled 13 to 5 computations (61.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | -inf | (-.f64 y (*.f64 y x)) |
| 0.0ms | y | @ | inf | (-.f64 y (*.f64 y x)) |
| 0.0ms | y | @ | 0 | (-.f64 y (*.f64 y x)) |
| 0.0ms | x | @ | -inf | (-.f64 y (*.f64 y x)) |
| 0.0ms | x | @ | inf | (-.f64 y (*.f64 y x)) |
| 1× | batch-egg-rewrite |
| 1492× | rational_best_oopsla_all_46_json-2 |
| 1492× | rational_best_oopsla_all_46_json-1 |
| 1492× | rational_best_oopsla_all_46_json-4 |
| 1492× | rational_best_oopsla_all_46_json-3 |
| 1206× | rational_best_oopsla_all_46_json_45_simplify-72 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 13 |
| 1 | 37 | 13 |
| 2 | 125 | 13 |
| 3 | 568 | 13 |
| 4 | 2957 | 13 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 y (*.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (*.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 x)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) -1) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x))) (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 x (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 y (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1 (-.f64 1 (*.f64 x (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1 (-.f64 1 (*.f64 y (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 y (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 -1 (+.f64 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 -1 (-.f64 x (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 -1 (+.f64 (*.f64 x (/.f64 y y)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 -1 (*.f64 (/.f64 y y) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 0 (*.f64 (/.f64 y y) (+.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 x) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 y (/.f64 (-.f64 1 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 x -1) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (+.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (+.f64 (*.f64 x (/.f64 y y)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (+.f64 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (+.f64 (*.f64 y (/.f64 x y)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 (*.f64 y x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 x -1) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (neg.f64 y) (/.f64 (-.f64 x (/.f64 y y)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (neg.f64 y) (/.f64 (*.f64 (/.f64 y y) (+.f64 x -1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 x) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 (*.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y x) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y x) y)))))) |
| 1× | egg-herbie |
| 1570× | rational_best_oopsla_all_46_json_45_simplify-36 |
| 1298× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 1064× | rational_best_oopsla_all_46_json_45_simplify-24 |
| 1038× | rational_best_oopsla_all_46_json_45_simplify-74 |
| 678× | rational_best_oopsla_all_46_json_45_simplify-13 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 238 | 1954 |
| 1 | 1154 | 1872 |
| 2 | 5409 | 1872 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
y |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(+.f64 y (*.f64 y (neg.f64 x))) |
(+.f64 y (*.f64 (*.f64 y x) -1)) |
(+.f64 (-.f64 y (*.f64 y x)) 0) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(+.f64 0 (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 y (neg.f64 x)) y) |
(+.f64 (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x)))) |
(+.f64 (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))) |
(+.f64 (*.f64 (*.f64 y x) -1) y) |
(+.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x))) (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(*.f64 y (-.f64 1 (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))) |
(*.f64 y (*.f64 1 (-.f64 1 x))) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 x (/.f64 y y))))) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 y (/.f64 x y))))) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 x))) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (/.f64 y y))))) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 y (/.f64 x y))))) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (*.f64 -1 (+.f64 x -1))) |
(*.f64 y (*.f64 -1 (-.f64 x (/.f64 y y)))) |
(*.f64 y (*.f64 -1 (+.f64 (*.f64 x (/.f64 y y)) -1))) |
(*.f64 y (*.f64 -1 (*.f64 (/.f64 y y) (+.f64 x -1)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 0 (*.f64 (/.f64 y y) (+.f64 x -1)))) |
(*.f64 y (*.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y))) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y))) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y))) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y)))) |
(*.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y)))) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 x) y))) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y))) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y))) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y))) |
(*.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))))) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))))) |
(*.f64 1 (-.f64 y (*.f64 y x))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 1 (*.f64 (+.f64 x -1) (neg.f64 y))) |
(*.f64 1 (*.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) (neg.f64 y))) |
(*.f64 (/.f64 y y) (-.f64 y (*.f64 y x))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y)))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y)))) |
(*.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 (neg.f64 y) (+.f64 x -1)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 x (/.f64 y y)) -1)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))) -1)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 y (/.f64 x y)) -1)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 -1 (-.f64 (*.f64 y x) y)) |
(*.f64 -1 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 (*.f64 y x) y))) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 x -1) -1))) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (-.f64 x (/.f64 y y)) -1))) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) -1))) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (*.f64 (/.f64 y y) (+.f64 x -1)) -1))) |
(*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))) |
(*.f64 (-.f64 1 x) y) |
(*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y) |
(*.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y) |
(*.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y) |
(*.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 (*.f64 y x) y)) |
(/.f64 (-.f64 y (*.f64 y x)) 1) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 y y)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(/.f64 (-.f64 (*.f64 y x) y) -1) |
(neg.f64 (-.f64 (*.f64 y x) y)) |
| Outputs |
|---|
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (+.f64 1 (*.f64 -1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
y |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 -1 (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 y (neg.f64 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 y (*.f64 (*.f64 y x) -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (-.f64 y (*.f64 y x)) 0) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (-.f64 y (*.f64 y x)) (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 0 (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (*.f64 y (neg.f64 x)) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (*.f64 0 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (*.f64 (*.f64 y x) -1) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(+.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 y (neg.f64 x))) (*.f64 y (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 (*.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 1 (-.f64 1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 x (/.f64 y y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 y (/.f64 x y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 1 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (/.f64 y y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 y (/.f64 x y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 -1 (+.f64 x -1))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 -1 (-.f64 x (/.f64 y y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 -1 (+.f64 (*.f64 x (/.f64 y y)) -1))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 -1 (*.f64 (/.f64 y y) (+.f64 x -1)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 0 (*.f64 (/.f64 y y) (+.f64 x -1)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 1 (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 x y)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 y (/.f64 (*.f64 x (/.f64 y y)) y)))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (-.f64 (/.f64 y y) (*.f64 (/.f64 y y) (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))))) |
(*.f64 y (-.f64 (/.f64 y y) x)) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 x) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 y (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 y (*.f64 y x)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 1 (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 1 (*.f64 (+.f64 x -1) (neg.f64 y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 1 (*.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) (neg.f64 y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 y y) (-.f64 y (*.f64 y x))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (/.f64 y y))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 y (/.f64 x y))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 y (/.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (/.f64 y y) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 y y)))) |
(*.f64 1 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 y (/.f64 (-.f64 1 x) (/.f64 y y))) |
(*.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 (*.f64 y x) y) (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (neg.f64 y) (+.f64 x -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 x (/.f64 y y)) -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y))) -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (neg.f64 y) (+.f64 (*.f64 y (/.f64 x y)) -1)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 (/.f64 (-.f64 y (*.f64 y x)) (-.f64 y (*.f64 y x))) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 y y))) |
(*.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 y y) (/.f64 (*.f64 y (+.f64 x -1)) (*.f64 y (+.f64 x -1))))) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 -1 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 y (*.f64 y x)) (/.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (*.f64 (-.f64 (*.f64 y x) y) (/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (-.f64 (*.f64 y x) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 x -1) -1))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (-.f64 x (/.f64 y y)) -1))) |
(*.f64 (neg.f64 y) (*.f64 -1 (neg.f64 (-.f64 x (/.f64 y y))))) |
(neg.f64 (*.f64 (-.f64 x (/.f64 y y)) (-.f64 y 0))) |
(*.f64 (neg.f64 y) (*.f64 -1 (-.f64 (/.f64 y y) x))) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (+.f64 (*.f64 x (/.f64 y y)) -1) -1))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 -1 (*.f64 (neg.f64 y) (/.f64 (*.f64 (/.f64 y y) (+.f64 x -1)) -1))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (*.f64 (-.f64 y (*.f64 y x)) (/.f64 1 (-.f64 y (*.f64 y x)))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (*.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 y (*.f64 y x))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 1 x) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 1 (*.f64 x (/.f64 y y))) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 1 (*.f64 y (/.f64 x y))) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (-.f64 1 (*.f64 x (*.f64 (/.f64 y y) (/.f64 y y)))) y) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(*.f64 (neg.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(/.f64 (-.f64 y (*.f64 y x)) 1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 y y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(/.f64 (-.f64 y (*.f64 y x)) (/.f64 (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)) (/.f64 (-.f64 (*.f64 y x) y) (-.f64 (*.f64 y x) y)))) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(/.f64 (-.f64 (*.f64 y x) y) -1) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
(neg.f64 (-.f64 (*.f64 y x) y)) |
(*.f64 y (-.f64 1 x)) |
(-.f64 y (*.f64 y x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
Compiled 23 to 7 computations (69.6% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| 1.0ms | y | @ | -inf | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| 0.0ms | x | @ | 0 | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| 0.0ms | y | @ | 0 | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| 0.0ms | x | @ | -inf | (+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| 1× | batch-egg-rewrite |
| 2128× | rational_best_oopsla_all_46_json-2 |
| 2128× | rational_best_oopsla_all_46_json-1 |
| 2128× | rational_best_oopsla_all_46_json-4 |
| 2128× | rational_best_oopsla_all_46_json-3 |
| 628× | rational_best_oopsla_all_46_json_45_simplify-23 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 23 |
| 1 | 67 | 23 |
| 2 | 230 | 17 |
| 3 | 1070 | 13 |
| 4 | 4626 | 13 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 z y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 -1 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x z) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 (*.f64 z (/.f64 x x)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 x (/.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 z (*.f64 (/.f64 x x) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (*.f64 x (/.f64 z x)) (*.f64 (/.f64 x x) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (+.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (-.f64 z y) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (-.f64 (*.f64 z (/.f64 x x)) y) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 x (/.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 x (/.f64 z x)) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 y (*.f64 z (neg.f64 (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 y (neg.f64 (*.f64 z (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (*.f64 z (neg.f64 (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (neg.f64 (*.f64 z (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (*.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z (/.f64 x x)) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 x (-.f64 z y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 x (-.f64 z y))) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (neg.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (*.f64 x (-.f64 z y)))))))) |
| 1× | egg-herbie |
| 1294× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 1168× | rational_best_oopsla_all_46_json_45_simplify-72 |
| 950× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 726× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 586× | rational_best_oopsla_all_46_json_45_simplify-74 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 169 | 2702 |
| 1 | 724 | 2248 |
| 2 | 3438 | 1604 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 x z))) |
(-.f64 (*.f64 x z) (*.f64 y x)) |
(-.f64 (*.f64 x (-.f64 z y)) 0) |
(-.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0)) |
(-.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0)) |
(-.f64 0 (neg.f64 (*.f64 x (-.f64 z y)))) |
(-.f64 0 (*.f64 -1 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 (*.f64 x z) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y x))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) y)) |
(*.f64 x (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 (*.f64 z (/.f64 x x)) x)))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 x (/.f64 z x))))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))))) |
(*.f64 x (+.f64 z (*.f64 (/.f64 x x) (neg.f64 y)))) |
(*.f64 x (+.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(*.f64 x (+.f64 (*.f64 x (/.f64 z x)) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(*.f64 x (+.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(*.f64 x (*.f64 (-.f64 z y) (/.f64 x x))) |
(*.f64 x (*.f64 (-.f64 (*.f64 z (/.f64 x x)) y) (/.f64 x x))) |
(*.f64 x (*.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) (/.f64 x x))) |
(*.f64 x (*.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) (/.f64 x x))) |
(*.f64 x (-.f64 z (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 (*.f64 x (/.f64 z x)) y)) |
(*.f64 x (-.f64 (*.f64 x (/.f64 z x)) (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) y)) |
(*.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x)))) |
(*.f64 (neg.f64 x) (-.f64 y z)) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x)))) |
(*.f64 (neg.f64 x) (+.f64 y (*.f64 z (neg.f64 (/.f64 x x))))) |
(*.f64 (neg.f64 x) (+.f64 y (neg.f64 (*.f64 z (/.f64 x x))))) |
(*.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (*.f64 z (neg.f64 (/.f64 x x))))) |
(*.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (neg.f64 (*.f64 z (/.f64 x x))))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x))))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) y)) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x)))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x))))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x))) |
(*.f64 (neg.f64 x) (*.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (/.f64 x x))) |
(*.f64 (*.f64 x (-.f64 z y)) 1) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 1 (*.f64 x (-.f64 z y))) |
(*.f64 -1 (neg.f64 (*.f64 x (-.f64 z y)))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 (-.f64 (*.f64 z (/.f64 x x)) y) x) |
(*.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) x) |
(*.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 y z) (neg.f64 x)) |
(*.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (neg.f64 x)) |
(*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 (neg.f64 (*.f64 x (-.f64 z y))) -1) |
(*.f64 (neg.f64 (*.f64 x (-.f64 z y))) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (neg.f64 (*.f64 x (-.f64 z y)))) |
(/.f64 (*.f64 x (-.f64 z y)) 1) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 x x)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(neg.f64 (neg.f64 (*.f64 x (-.f64 z y)))) |
(neg.f64 (*.f64 -1 (*.f64 x (-.f64 z y)))) |
| Outputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 -1 (*.f64 x y)) |
(*.f64 x (neg.f64 y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 -1 (*.f64 x y)) |
(*.f64 x (neg.f64 y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 z (*.f64 -1 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 y x)) |
(*.f64 -1 (*.f64 x y)) |
(*.f64 x (neg.f64 y)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 x z))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 x z) (*.f64 y x)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 x (-.f64 z y)) 0) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 0 (neg.f64 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 0 (*.f64 -1 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 (*.f64 x z) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y x))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) y)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 x (/.f64 (*.f64 z (/.f64 x x)) x)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 x (/.f64 z x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 z (*.f64 (/.f64 x x) (neg.f64 y)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (*.f64 x (/.f64 z x)) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (+.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (neg.f64 y)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (*.f64 (-.f64 z y) (/.f64 x x))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (-.f64 (*.f64 z (/.f64 x x)) y) (/.f64 x x))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) (/.f64 x x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (*.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) (/.f64 x x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 x (-.f64 z (*.f64 y (/.f64 x x)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 x (/.f64 z x)) y)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 x (/.f64 z x)) (*.f64 y (/.f64 x x)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) y)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (-.f64 y z)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 y (*.f64 z (neg.f64 (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 y (neg.f64 (*.f64 z (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (*.f64 z (neg.f64 (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (*.f64 y (/.f64 x x)) (neg.f64 (*.f64 z (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 z) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) y)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 y (/.f64 x x)))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (neg.f64 x) (/.f64 y (neg.f64 x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 z (/.f64 x x))) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (*.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (/.f64 x x))) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (*.f64 x (-.f64 z y)) 1) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 1 (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (neg.f64 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 (*.f64 z (/.f64 x x)) y) x) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (+.f64 (*.f64 x (/.f64 z x)) (neg.f64 y)) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (+.f64 (neg.f64 y) (*.f64 (/.f64 x x) (*.f64 z (/.f64 x x)))) x) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (-.f64 z y) x) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 y z) (neg.f64 x)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (+.f64 (neg.f64 z) (*.f64 y (/.f64 x x))) (neg.f64 x)) |
(+.f64 (*.f64 -1 (*.f64 x y)) (*.f64 z x)) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 (*.f64 x (-.f64 z y))) -1) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 (*.f64 x (-.f64 z y))) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (neg.f64 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) 1) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 x x)) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(neg.f64 (neg.f64 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
(neg.f64 (*.f64 -1 (*.f64 x (-.f64 z y)))) |
(-.f64 (*.f64 y (neg.f64 x)) (neg.f64 (*.f64 z x))) |
(-.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 z x))) |
(*.f64 x (-.f64 z y)) |
Compiled 5981 to 1003 computations (83.2% saved)
8 alts after pruning (4 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 363 | 3 | 366 |
| Fresh | 0 | 1 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 4 | 4 |
| Total | 364 | 8 | 372 |
| Status | Error | Program |
|---|---|---|
| ▶ | 28.3b | (-.f64 (*.f64 z x) (*.f64 y x)) |
| ✓ | 23.5b | (-.f64 y (*.f64 y x)) |
| ✓ | 0.0b | (-.f64 y (*.f64 x (-.f64 y z))) |
| ▶ | 11.9b | (-.f64 y (*.f64 x (neg.f64 z))) |
| ✓ | 28.3b | (*.f64 (-.f64 z y) x) |
| ✓ | 39.4b | (*.f64 z x) |
| ▶ | 51.4b | (*.f64 y (neg.f64 x)) |
| 34.7b | y |
Compiled 62 to 40 computations (35.5% saved)
Compiled 11 to 5 computations (54.5% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 y (*.f64 x (neg.f64 z))) |
Compiled 18 to 6 computations (66.7% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (-.f64 y (*.f64 x (neg.f64 z))) |
| 0.0ms | x | @ | 0 | (-.f64 y (*.f64 x (neg.f64 z))) |
| 0.0ms | z | @ | 0 | (-.f64 y (*.f64 x (neg.f64 z))) |
| 0.0ms | z | @ | inf | (-.f64 y (*.f64 x (neg.f64 z))) |
| 0.0ms | x | @ | -inf | (-.f64 y (*.f64 x (neg.f64 z))) |
| 1× | batch-egg-rewrite |
| 1780× | rational_best_oopsla_all_46_json-2 |
| 1780× | rational_best_oopsla_all_46_json-1 |
| 1780× | rational_best_oopsla_all_46_json-4 |
| 1780× | rational_best_oopsla_all_46_json-3 |
| 1008× | rational_best_oopsla_all_46_json_45_simplify-7 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 17 |
| 1 | 56 | 17 |
| 2 | 176 | 17 |
| 3 | 774 | 13 |
| 4 | 3608 | 13 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 y (*.f64 x (neg.f64 z))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 (*.f64 x (neg.f64 z)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y (*.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y (*.f64 x z)) (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (neg.f64 z)) -1) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z)) (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 1 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x (neg.f64 z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (-.f64 (*.f64 x (neg.f64 z)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x (neg.f64 z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (-.f64 (*.f64 x (neg.f64 z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)))))) |
| 1× | egg-herbie |
| 1482× | rational_best_oopsla_all_46_json_45_simplify-82 |
| 1416× | rational_best_oopsla_all_46_json_45_simplify-72 |
| 612× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 526× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 410× | rational_best_oopsla_all_46_json_45_simplify-31 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 72 | 1022 |
| 1 | 277 | 1010 |
| 2 | 1865 | 994 |
| 3 | 5889 | 994 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 x z)) |
(+.f64 y (*.f64 (*.f64 x (neg.f64 z)) -1)) |
(+.f64 (+.f64 y (*.f64 x z)) 0) |
(+.f64 (+.f64 y (*.f64 x z)) (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 0 (+.f64 y (*.f64 x z))) |
(+.f64 (*.f64 x z) y) |
(+.f64 (*.f64 (*.f64 x (neg.f64 z)) -1) y) |
(+.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z))) |
(+.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(+.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z)) (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 (+.f64 y (*.f64 x z)) 1) |
(*.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 1 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 1 (+.f64 y (*.f64 x z))) |
(*.f64 -1 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(*.f64 -1 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (-.f64 (*.f64 x (neg.f64 z)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(*.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1) |
(*.f64 (-.f64 (*.f64 x (neg.f64 z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(*.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (-.f64 (*.f64 x (neg.f64 z)) y)) |
(/.f64 (+.f64 y (*.f64 x z)) 1) |
(/.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) |
(/.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(/.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1) |
(neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)) |
| Outputs |
|---|
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
y |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(*.f64 z x) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 z x) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 y (*.f64 x z)) |
(+.f64 y (*.f64 z x)) |
(+.f64 y (*.f64 (*.f64 x (neg.f64 z)) -1)) |
(+.f64 y (*.f64 z x)) |
(+.f64 (+.f64 y (*.f64 x z)) 0) |
(+.f64 y (*.f64 z x)) |
(+.f64 (+.f64 y (*.f64 x z)) (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(+.f64 0 (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 x z) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 (*.f64 x (neg.f64 z)) -1) y) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 0 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(+.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 x z)) (*.f64 y (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) 1) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 1 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 y (*.f64 x z)) (*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 1 (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(*.f64 -1 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(*.f64 -1 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (-.f64 (*.f64 x (neg.f64 z)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 x (neg.f64 z)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 z (neg.f64 x)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (*.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1) |
(neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(*.f64 (-.f64 (*.f64 x (neg.f64 z)) y) (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 x (neg.f64 z)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 z (neg.f64 x)))) |
(*.f64 (*.f64 (+.f64 y (*.f64 x z)) (/.f64 1 (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (*.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (+.f64 y (*.f64 x z))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (neg.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) (-.f64 (*.f64 x (neg.f64 z)) y)) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 x (neg.f64 z)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (-.f64 y (*.f64 z (neg.f64 x)))) |
(/.f64 (+.f64 y (*.f64 x z)) 1) |
(+.f64 y (*.f64 z x)) |
(/.f64 (+.f64 y (*.f64 x z)) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z)))) |
(+.f64 y (*.f64 z x)) |
(/.f64 (+.f64 y (*.f64 x z)) (/.f64 (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))) (/.f64 (+.f64 y (*.f64 x z)) (+.f64 y (*.f64 x z))))) |
(+.f64 y (*.f64 z x)) |
(/.f64 (-.f64 (*.f64 x (neg.f64 z)) y) -1) |
(neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(neg.f64 (-.f64 (*.f64 x (neg.f64 z)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 (*.f64 z x) (*.f64 y x)) |
Compiled 19 to 6 computations (68.4% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | z | @ | 0 | (-.f64 (*.f64 z x) (*.f64 y x)) |
| 0.0ms | x | @ | -inf | (-.f64 (*.f64 z x) (*.f64 y x)) |
| 0.0ms | z | @ | -inf | (-.f64 (*.f64 z x) (*.f64 y x)) |
| 0.0ms | y | @ | 0 | (-.f64 (*.f64 z x) (*.f64 y x)) |
| 0.0ms | z | @ | inf | (-.f64 (*.f64 z x) (*.f64 y x)) |
| 1× | batch-egg-rewrite |
| 1906× | rational_best_oopsla_all_46_json-2 |
| 1906× | rational_best_oopsla_all_46_json-1 |
| 1906× | rational_best_oopsla_all_46_json-4 |
| 1906× | rational_best_oopsla_all_46_json-3 |
| 674× | rational_best_oopsla_all_46_json_45_simplify-35 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 19 |
| 1 | 52 | 13 |
| 2 | 192 | 13 |
| 3 | 904 | 13 |
| 4 | 4195 | 13 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (*.f64 z x) (*.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 (*.f64 x y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z x) (*.f64 1 (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) (*.f64 (-.f64 z y) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (-.f64 z y)) 0) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 z y) 0) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) -1) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 x (neg.f64 y))) (*.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y))) (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (-.f64 z y)) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (/.f64 x x) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 x (/.f64 (-.f64 z y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (*.f64 (/.f64 x x) (-.f64 z y)) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (-.f64 z (*.f64 y (/.f64 x x))) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z (*.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 z (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 y z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 y z)) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 (*.f64 y (/.f64 x x)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 (neg.f64 z) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 (neg.f64 z) (*.f64 y (neg.f64 (/.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z y) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y z) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x x) (-.f64 z y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (*.f64 y (/.f64 x x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 y z))))))) |
| 1× | egg-herbie |
| 1550× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 1226× | rational_best_oopsla_all_46_json_45_simplify-37 |
| 1074× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 556× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 462× | rational_best_oopsla_all_46_json_45_simplify-74 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 140 | 1622 |
| 1 | 575 | 1478 |
| 2 | 3852 | 1478 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) x) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 z x) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(*.f64 -1 (*.f64 y x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 z x) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 (*.f64 x y) -1)) |
(+.f64 (*.f64 z x) (*.f64 1 (*.f64 x (neg.f64 y)))) |
(+.f64 (*.f64 x (-.f64 z y)) 0) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (-.f64 z y) 0)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (-.f64 z y))) |
(+.f64 0 (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z x)) |
(+.f64 (*.f64 (*.f64 x (-.f64 z y)) 0) (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y)))) |
(+.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0) (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (-.f64 z y) 0) (*.f64 x (-.f64 z y))) |
(+.f64 (*.f64 (*.f64 x y) -1) (*.f64 z x)) |
(+.f64 (*.f64 1 (*.f64 x (neg.f64 y))) (*.f64 z x)) |
(+.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y))) (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(+.f64 (*.f64 0 (-.f64 z y)) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (/.f64 x x) (-.f64 z y))) |
(*.f64 x (-.f64 z (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) y)) |
(*.f64 x (*.f64 x (/.f64 (-.f64 z y) x))) |
(*.f64 x (*.f64 (*.f64 (/.f64 x x) (-.f64 z y)) (/.f64 x x))) |
(*.f64 x (*.f64 (-.f64 z (*.f64 y (/.f64 x x))) (/.f64 x x))) |
(*.f64 x (-.f64 z (*.f64 x (/.f64 y x)))) |
(*.f64 x (-.f64 z (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 x (/.f64 y x)))) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 (*.f64 x (-.f64 z y)) 1) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 1 (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 (*.f64 x (-.f64 y z)) -1) |
(*.f64 (*.f64 x (-.f64 y z)) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (neg.f64 x) (-.f64 y z)) |
(*.f64 (neg.f64 x) (-.f64 (*.f64 y (/.f64 x x)) z)) |
(*.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x))) |
(*.f64 (neg.f64 x) (-.f64 (neg.f64 z) (neg.f64 y))) |
(*.f64 (neg.f64 x) (-.f64 (neg.f64 z) (*.f64 y (neg.f64 (/.f64 x x))))) |
(*.f64 (-.f64 z y) x) |
(*.f64 (-.f64 z y) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) |
(*.f64 -1 (*.f64 x (-.f64 y z))) |
(*.f64 (-.f64 y z) (neg.f64 x)) |
(*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 (*.f64 (/.f64 x x) (-.f64 z y)) x) |
(*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 (-.f64 z (*.f64 y (/.f64 x x))) x) |
(*.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 y z))) |
(/.f64 (*.f64 x (-.f64 z y)) 1) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 x x)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(/.f64 (*.f64 x (-.f64 y z)) -1) |
(neg.f64 (*.f64 x (-.f64 y z))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 z) (*.f64 -1 y)) x)) |
(*.f64 x (-.f64 z y)) |
(*.f64 z x) |
(*.f64 x z) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(*.f64 -1 (*.f64 y x)) |
(neg.f64 (*.f64 y x)) |
(*.f64 y (neg.f64 x)) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 (*.f64 x y) -1)) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 z x) (*.f64 1 (*.f64 x (neg.f64 y)))) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 x (-.f64 z y)) 0) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) 0)) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0)) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 (-.f64 z y) 0)) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (-.f64 z y)) (*.f64 0 (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 0 (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z x)) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 (*.f64 x (-.f64 z y)) 0) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y)))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (+.f64 z (neg.f64 y)))) |
(*.f64 (*.f64 x (+.f64 z (neg.f64 y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) 0) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 0 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (-.f64 z y) 0) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(+.f64 (*.f64 (*.f64 x y) -1) (*.f64 z x)) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 1 (*.f64 x (neg.f64 y))) (*.f64 z x)) |
(+.f64 (*.f64 x z) (neg.f64 (*.f64 y x))) |
(*.f64 x (+.f64 z (neg.f64 y))) |
(+.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (neg.f64 y))) (*.f64 (*.f64 z x) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (+.f64 z (neg.f64 y)))) |
(*.f64 (*.f64 x (+.f64 z (neg.f64 y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(+.f64 (*.f64 0 (-.f64 z y)) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (/.f64 x x) (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 z (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) y)) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 x (/.f64 (-.f64 z y) x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (*.f64 (/.f64 x x) (-.f64 z y)) (/.f64 x x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (*.f64 (-.f64 z (*.f64 y (/.f64 x x))) (/.f64 x x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 z (*.f64 x (/.f64 y x)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 z (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 y (/.f64 x x)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 x (/.f64 y x)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 x (-.f64 (*.f64 z (/.f64 x x)) (*.f64 (/.f64 x x) (*.f64 y (/.f64 x x))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) 1) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 z y)) (*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 1 (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 y z)) -1) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 x (-.f64 y z)) (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (-.f64 y z)) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (-.f64 (*.f64 y (/.f64 x x)) z)) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (*.f64 (-.f64 y z) (/.f64 x x))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (-.f64 (neg.f64 z) (neg.f64 y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 x) (-.f64 (neg.f64 z) (*.f64 y (neg.f64 (/.f64 x x))))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z y) (*.f64 x (/.f64 (-.f64 z y) (-.f64 z y)))) |
(*.f64 x (-.f64 z y)) |
(*.f64 -1 (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 y z) (neg.f64 x)) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 (*.f64 x (-.f64 z y)) (/.f64 1 (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 (/.f64 x x) (-.f64 z y)) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(*.f64 (-.f64 z (*.f64 y (/.f64 x x))) x) |
(*.f64 x (-.f64 z y)) |
(*.f64 (neg.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) 1) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 x x)) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y)))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (-.f64 z y) (-.f64 z y))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 z y)) (/.f64 (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (/.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))))) |
(*.f64 x (-.f64 z y)) |
(/.f64 (*.f64 x (-.f64 y z)) -1) |
(*.f64 x (-.f64 z y)) |
(neg.f64 (*.f64 x (-.f64 y z))) |
(*.f64 x (-.f64 z y)) |
Compiled 1808 to 283 computations (84.3% saved)
8 alts after pruning (2 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 120 | 1 | 121 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 5 | 6 |
| Total | 121 | 8 | 129 |
| Status | Error | Program |
|---|---|---|
| ✓ | 28.3b | (-.f64 (*.f64 z x) (*.f64 y x)) |
| ✓ | 23.5b | (-.f64 y (*.f64 y x)) |
| ✓ | 0.0b | (-.f64 y (*.f64 x (-.f64 y z))) |
| ▶ | 11.9b | (+.f64 (*.f64 z x) y) |
| ✓ | 28.3b | (*.f64 (-.f64 z y) x) |
| ✓ | 39.4b | (*.f64 z x) |
| ✓ | 51.4b | (*.f64 y (neg.f64 x)) |
| 34.7b | y |
Compiled 61 to 39 computations (36.1% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 z x) y) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | -inf | (+.f64 (*.f64 z x) y) |
| 0.0ms | z | @ | inf | (+.f64 (*.f64 z x) y) |
| 0.0ms | y | @ | -inf | (+.f64 (*.f64 z x) y) |
| 0.0ms | z | @ | 0 | (+.f64 (*.f64 z x) y) |
| 0.0ms | z | @ | -inf | (+.f64 (*.f64 z x) y) |
| 1× | batch-egg-rewrite |
| 1466× | rational_best_oopsla_all_46_json-2 |
| 1466× | rational_best_oopsla_all_46_json-1 |
| 1466× | rational_best_oopsla_all_46_json-4 |
| 1466× | rational_best_oopsla_all_46_json-3 |
| 1172× | rational_best_oopsla_all_46_json_45_simplify-72 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 43 | 13 |
| 2 | 135 | 13 |
| 3 | 573 | 13 |
| 4 | 2892 | 13 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 z x) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 y (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 z x) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 z (neg.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 1 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 z (neg.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 1 (-.f64 (*.f64 z (neg.f64 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (-.f64 (*.f64 z (neg.f64 x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z (neg.f64 x)) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z (neg.f64 x)) y) (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (-.f64 (*.f64 z (neg.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y)))))) |
| 1× | egg-herbie |
| 1364× | rational_best_oopsla_all_46_json_45_simplify-13 |
| 1092× | rational_best_oopsla_all_46_json_45_simplify-35 |
| 838× | rational_best_oopsla_all_46_json_45_simplify-72 |
| 832× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 488× | rational_best_oopsla_all_46_json_45_simplify-49 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 72 | 628 |
| 1 | 291 | 616 |
| 2 | 2392 | 616 |
| 3 | 6963 | 616 |
| 1× | node limit |
| Inputs |
|---|
y |
(*.f64 z x) |
(*.f64 z x) |
y |
(*.f64 z x) |
(*.f64 z x) |
(*.f64 z x) |
y |
y |
(-.f64 (*.f64 z x) (neg.f64 y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 (+.f64 (*.f64 z x) y) 0) |
(-.f64 0 (-.f64 (*.f64 z (neg.f64 x)) y)) |
(*.f64 (+.f64 (*.f64 z x) y) 1) |
(*.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 1 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)))) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)))) |
(*.f64 1 (+.f64 (*.f64 z x) y)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(*.f64 -1 (-.f64 (*.f64 z (neg.f64 x)) y)) |
(*.f64 -1 (*.f64 1 (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)) |
(*.f64 (-.f64 (*.f64 z (neg.f64 x)) y) -1) |
(*.f64 (-.f64 (*.f64 z (neg.f64 x)) y) (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(*.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)) |
(*.f64 (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (-.f64 (*.f64 z (neg.f64 x)) y)) |
(/.f64 (+.f64 (*.f64 z x) y) 1) |
(/.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) |
(/.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y)) |
| Outputs |
|---|
y |
(*.f64 z x) |
(*.f64 z x) |
y |
(*.f64 z x) |
(*.f64 z x) |
(*.f64 z x) |
y |
y |
(-.f64 (*.f64 z x) (neg.f64 y)) |
(-.f64 y (neg.f64 (*.f64 z x))) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(-.f64 (+.f64 (*.f64 z x) y) 0) |
(+.f64 y (*.f64 z x)) |
(-.f64 0 (-.f64 (*.f64 z (neg.f64 x)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(*.f64 (+.f64 (*.f64 z x) y) 1) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 1 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (+.f64 (*.f64 z x) y) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(*.f64 1 (+.f64 (*.f64 z x) y)) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (+.f64 (*.f64 z x) y)) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (*.f64 (+.f64 (*.f64 z x) y) (/.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))))) |
(+.f64 y (*.f64 z x)) |
(*.f64 -1 (-.f64 (*.f64 z (neg.f64 x)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 1 (-.f64 (*.f64 z (neg.f64 x)) y))) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 (-.f64 y (*.f64 z (neg.f64 x))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(*.f64 (-.f64 y (*.f64 x (neg.f64 z))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(*.f64 (*.f64 (+.f64 (*.f64 z x) y) (/.f64 1 (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)) |
(+.f64 y (*.f64 z x)) |
(*.f64 (-.f64 (*.f64 z (neg.f64 x)) y) -1) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(*.f64 (-.f64 (*.f64 z (neg.f64 x)) y) (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 (-.f64 y (*.f64 z (neg.f64 x))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(*.f64 (-.f64 y (*.f64 x (neg.f64 z))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(*.f64 (*.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (+.f64 (*.f64 z x) y)) |
(+.f64 y (*.f64 z x)) |
(*.f64 (neg.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) (-.f64 (*.f64 z (neg.f64 x)) y)) |
(*.f64 (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x))) (neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y))) |
(*.f64 (-.f64 y (*.f64 z (neg.f64 x))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(*.f64 (-.f64 y (*.f64 x (neg.f64 z))) (/.f64 (+.f64 y (*.f64 z x)) (+.f64 y (*.f64 z x)))) |
(/.f64 (+.f64 (*.f64 z x) y) 1) |
(+.f64 y (*.f64 z x)) |
(/.f64 (+.f64 (*.f64 z x) y) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y))) |
(+.f64 y (*.f64 z x)) |
(/.f64 (+.f64 (*.f64 z x) y) (/.f64 (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)) (/.f64 (+.f64 (*.f64 z x) y) (+.f64 (*.f64 z x) y)))) |
(+.f64 y (*.f64 z x)) |
(neg.f64 (-.f64 (*.f64 z (neg.f64 x)) y)) |
(-.f64 y (*.f64 z (neg.f64 x))) |
(-.f64 y (*.f64 x (neg.f64 z))) |
Compiled 785 to 104 computations (86.8% saved)
8 alts after pruning (1 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 41 | 0 | 41 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 6 | 6 |
| Total | 41 | 8 | 49 |
| Status | Error | Program |
|---|---|---|
| ✓ | 28.3b | (-.f64 (*.f64 z x) (*.f64 y x)) |
| ✓ | 23.5b | (-.f64 y (*.f64 y x)) |
| ✓ | 0.0b | (-.f64 y (*.f64 x (-.f64 y z))) |
| ✓ | 11.9b | (+.f64 (*.f64 z x) y) |
| ✓ | 28.3b | (*.f64 (-.f64 z y) x) |
| ✓ | 39.4b | (*.f64 z x) |
| ✓ | 51.4b | (*.f64 y (neg.f64 x)) |
| 34.7b | y |
Compiled 61 to 39 computations (36.1% saved)
| Inputs |
|---|
y |
(*.f64 z x) |
(*.f64 y (neg.f64 x)) |
(*.f64 (-.f64 z y) x) |
(+.f64 (*.f64 z x) y) |
(-.f64 y (*.f64 y x)) |
(-.f64 y (*.f64 x (neg.f64 z))) |
(-.f64 y (*.f64 x (-.f64 y z))) |
(-.f64 (*.f64 z x) (*.f64 y x)) |
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x z)) |
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
(+.f64 (-.f64 y (*.f64 x y)) (*.f64 x z)) |
| Outputs |
|---|
(-.f64 y (*.f64 x (-.f64 y z))) |
4 calls:
| 11.0ms | (+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
| 7.0ms | y |
| 7.0ms | z |
| 7.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | (+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) |
Compiled 96 to 44 computations (54.2% saved)
| Inputs |
|---|
y |
(*.f64 z x) |
(*.f64 y (neg.f64 x)) |
(*.f64 (-.f64 z y) x) |
(+.f64 (*.f64 z x) y) |
(-.f64 y (*.f64 y x)) |
(-.f64 y (*.f64 x (neg.f64 z))) |
| Outputs |
|---|
(*.f64 (-.f64 z y) x) |
(+.f64 (*.f64 z x) y) |
(*.f64 (-.f64 z y) x) |
3 calls:
| 80.0ms | y |
| 63.0ms | x |
| 15.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 0.8b | 3 | x |
| 7.6b | 5 | y |
| 5.3b | 3 | z |
Compiled 44 to 23 computations (47.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 0.0012979745300382062 | 10.841204788350415 |
| 14.0ms | -56846708892.750114 | -8105082.238704553 |
| 24.0ms | 256× | body | 256 | valid |
| 1.0ms | 7× | body | 256 | infinite |
Compiled 306 to 205 computations (33% saved)
| Inputs |
|---|
y |
(*.f64 z x) |
(*.f64 y (neg.f64 x)) |
(*.f64 (-.f64 z y) x) |
| Outputs |
|---|
(*.f64 (-.f64 z y) x) |
y |
(*.f64 (-.f64 z y) x) |
y |
(*.f64 (-.f64 z y) x) |
3 calls:
| 98.0ms | y |
| 79.0ms | z |
| 17.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 10.1b | 5 | x |
| 17.3b | 3 | y |
| 17.5b | 11 | z |
Compiled 28 to 17 computations (39.3% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 0.0012979745300382062 | 10.841204788350415 |
| 15.0ms | -2.8670466323532595e-148 | -3.888655653834825e-152 |
| 67.0ms | -1.6163496346324874e-91 | -5.1575930907207846e-107 |
| 5.0ms | -1.372310916669541e-60 | -1.1411776965159217e-60 |
| 96.0ms | 464× | body | 256 | valid |
Compiled 424 to 303 computations (28.5% saved)
| Inputs |
|---|
y |
(*.f64 z x) |
(*.f64 y (neg.f64 x)) |
| Outputs |
|---|
(*.f64 y (neg.f64 x)) |
(*.f64 z x) |
y |
(*.f64 z x) |
y |
(*.f64 z x) |
(*.f64 y (neg.f64 x)) |
(*.f64 z x) |
3 calls:
| 101.0ms | z |
| 25.0ms | x |
| 19.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 18.2b | 8 | x |
| 21.6b | 6 | y |
| 21.4b | 9 | z |
Compiled 23 to 15 computations (34.8% saved)
| 7× | binary-search |
| Time | Left | Right |
|---|---|---|
| 31.0ms | 5.313376199813134e+299 | 3.379672849351531e+300 |
| 21.0ms | 8.27623243904212e+168 | 1.2298754694908078e+172 |
| 63.0ms | 0.0012979745300382062 | 10.841204788350415 |
| 15.0ms | -3.1134526129504445e-121 | -4.471526803096152e-125 |
| 17.0ms | -1.6163496346324874e-91 | -5.1575930907207846e-107 |
| 6.0ms | -1.372310916669541e-60 | -1.1411776965159217e-60 |
| 57.0ms | -7.730716286245618e+137 | -1.6974949897685045e+134 |
| 128.0ms | 816× | body | 256 | valid |
| 71.0ms | 355× | body | 256 | infinite |
Compiled 696 to 516 computations (25.9% saved)
Total -40.7b remaining (-190.9%)
Threshold costs -40.7b (-190.9%)
| Inputs |
|---|
y |
(*.f64 z x) |
| Outputs |
|---|
(*.f64 z x) |
y |
(*.f64 z x) |
y |
(*.f64 z x) |
3 calls:
| 23.0ms | z |
| 15.0ms | x |
| 11.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 21.3b | 5 | x |
| 22.8b | 3 | y |
| 23.5b | 7 | z |
Compiled 19 to 13 computations (31.6% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 0.0012979745300382062 | 10.841204788350415 |
| 14.0ms | -3.1134526129504445e-121 | -4.471526803096152e-125 |
| 18.0ms | -1.6163496346324874e-91 | -5.1575930907207846e-107 |
| 5.0ms | -1.372310916669541e-60 | -1.1411776965159217e-60 |
| 45.0ms | 464× | body | 256 | valid |
Compiled 366 to 274 computations (25.1% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 65 | 328 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(-.f64 y (*.f64 x (-.f64 y z))) |
(if (<=.f64 x -8200000) (*.f64 (-.f64 z y) x) (if (<=.f64 x 1) (+.f64 (*.f64 z x) y) (*.f64 (-.f64 z y) x))) |
(if (<=.f64 x -4884978764699277/3618502788666131106986593281521497120414687020801267626233049500247285301248) (*.f64 (-.f64 z y) x) (if (<=.f64 x -5164499756173817/10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504) y (if (<=.f64 x -251939172494419/899782758908639276562107701537196371773939423660383326620151114522367516134297574063808137220778171429984182126704179024641653211098859937801703036173032771026944) (*.f64 (-.f64 z y) x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (*.f64 (-.f64 z y) x))))) |
(if (<=.f64 x -4399999999999999896606886656158450140574614779693151524602422963933029598611368952491434075145245931363423906157786898699348849406771200) (*.f64 y (neg.f64 x)) (if (<=.f64 x -8973886915892005/7237005577332262213973186563042994240829374041602535252466099000494570602496) (*.f64 z x) (if (<=.f64 x -2685539873210385/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) y (if (<=.f64 x -5507693117222391/1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488) (*.f64 z x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (if (<=.f64 x 6500000000000000022606734061391986766041020096244461673404599789993330701717622435176536826855209123674202168031031074129581189081295499470510025188320971705849156458250240) (*.f64 z x) (if (<=.f64 x 620000000000000002812613188671079298235520557289047473422625518429428342837685895068737109341790204803730465253260992673729888602064005947808066243669644173549388442526584482658037936003571136983080554319727158561166378157131193224291310562966086583497161642095273582318729605989883503381277852041216) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))) |
(if (<=.f64 x -551821675271585/452312848583266388373324160190187140051835877600158453279131187530910662656) (*.f64 z x) (if (<=.f64 x -6068287213504235/1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688) y (if (<=.f64 x -7256757823367339/372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872) (*.f64 z x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (*.f64 z x))))) |
y |
| Outputs |
|---|
(-.f64 y (*.f64 x (-.f64 y z))) |
(if (<=.f64 x -8200000) (*.f64 (-.f64 z y) x) (if (<=.f64 x 1) (+.f64 (*.f64 z x) y) (*.f64 (-.f64 z y) x))) |
(if (<=.f64 x -4884978764699277/3618502788666131106986593281521497120414687020801267626233049500247285301248) (*.f64 (-.f64 z y) x) (if (<=.f64 x -5164499756173817/10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504) y (if (<=.f64 x -251939172494419/899782758908639276562107701537196371773939423660383326620151114522367516134297574063808137220778171429984182126704179024641653211098859937801703036173032771026944) (*.f64 (-.f64 z y) x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (*.f64 (-.f64 z y) x))))) |
(if (<=.f64 x -4399999999999999896606886656158450140574614779693151524602422963933029598611368952491434075145245931363423906157786898699348849406771200) (*.f64 y (neg.f64 x)) (if (<=.f64 x -8973886915892005/7237005577332262213973186563042994240829374041602535252466099000494570602496) (*.f64 z x) (if (<=.f64 x -2685539873210385/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) y (if (<=.f64 x -5507693117222391/1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488) (*.f64 z x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (if (<=.f64 x 6500000000000000022606734061391986766041020096244461673404599789993330701717622435176536826855209123674202168031031074129581189081295499470510025188320971705849156458250240) (*.f64 z x) (if (<=.f64 x 620000000000000002812613188671079298235520557289047473422625518429428342837685895068737109341790204803730465253260992673729888602064005947808066243669644173549388442526584482658037936003571136983080554319727158561166378157131193224291310562966086583497161642095273582318729605989883503381277852041216) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))) |
(if (<=.f64 x -551821675271585/452312848583266388373324160190187140051835877600158453279131187530910662656) (*.f64 z x) (if (<=.f64 x -6068287213504235/1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688) y (if (<=.f64 x -7256757823367339/372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872) (*.f64 z x) (if (<=.f64 x 1498797955988901/1152921504606846976) y (*.f64 z x))))) |
y |
Compiled 159 to 82 computations (48.4% saved)
| 2× | egg-herbie |
| 1504× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 1362× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 1308× | rational_best_oopsla_all_46_json_45_simplify-37 |
| 1208× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 1094× | rational_best_oopsla_all_46_json_45_simplify-74 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 25 |
| 1 | 21 | 25 |
| 2 | 73 | 25 |
| 3 | 283 | 25 |
| 4 | 1268 | 25 |
| 5 | 5728 | 25 |
| 0 | 196 | 2806 |
| 1 | 789 | 2436 |
| 2 | 4473 | 2436 |
| 1× | node limit |
| 1× | node limit |
Compiled 80 to 36 computations (55% saved)
Compiled 144 to 63 computations (56.3% saved)
Loading profile data...