Time bar (total: 2.0s)
| 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 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 5 |
| 37.5% | 37.5% | 62.4% | 0.1% | 0% | 0% | 0% | 6 |
| 56.3% | 56.2% | 43.7% | 0.1% | 0% | 0% | 0% | 7 |
| 65.6% | 65.6% | 34.3% | 0.1% | 0% | 0% | 0% | 8 |
| 76.6% | 76.5% | 23.4% | 0.1% | 0% | 0% | 0% | 9 |
| 82% | 82% | 18% | 0.1% | 0% | 0% | 0% | 10 |
| 87.9% | 87.8% | 12.1% | 0.1% | 0% | 0% | 0% | 11 |
| 90.8% | 90.7% | 9.2% | 0.1% | 0% | 0% | 0% | 12 |
Compiled 8 to 6 computations (25% saved)
| 1.3s | 8104× | body | 256 | valid |
| 11.0ms | 67× | body | 1024 | valid |
| 11.0ms | 49× | body | 2048 | valid |
| 5.0ms | 70× | body | 256 | infinite |
| 4.0ms | 36× | body | 512 | valid |
| 2× | egg-herbie |
| 1164× | rational_best_oopsla_all_46_json_45_simplify-93 |
| 934× | rational_best_oopsla_all_46_json_45_simplify-10 |
| 762× | rational_best_oopsla_all_46_json_45_simplify-30 |
| 696× | rational_best_oopsla_all_46_json_45_simplify-72 |
| 628× | rational_best_oopsla_all_46_json_45_simplify-89 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 26 |
| 1 | 30 | 26 |
| 2 | 77 | 26 |
| 3 | 222 | 26 |
| 4 | 790 | 26 |
| 5 | 3342 | 26 |
| 6 | 6881 | 26 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(*.f64 200 (-.f64 x y)) |
(*.f64 200 (-.f64 y x)) |
| Outputs |
|---|
(*.f64 200 (-.f64 x y)) |
(*.f64 200 (-.f64 y x)) |
Compiled 9 to 7 computations (22.2% saved)
| 1× | egg-herbie |
| 952× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 946× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 630× | rational_best_oopsla_all_46_json_45_simplify-10 |
| 578× | rational_best_oopsla_all_46_json_45_simplify-77 |
| 570× | rational_best_oopsla_all_46_json_45_simplify-72 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 21 | 13 |
| 2 | 48 | 13 |
| 3 | 132 | 13 |
| 4 | 487 | 13 |
| 5 | 2430 | 13 |
| 6 | 5457 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 200 (-.f64 x y)) |
| Outputs |
|---|
(*.f64 200 (-.f64 x y)) |
Compiled 7 to 5 computations (28.6% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (*.f64 200 (-.f64 x y)) |
Compiled 7 to 5 computations (28.6% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 200 (-.f64 x y)) |
Compiled 13 to 6 computations (53.8% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (*.f64 200 (-.f64 x y)) |
| 0.0ms | x | @ | -inf | (*.f64 200 (-.f64 x y)) |
| 0.0ms | y | @ | inf | (*.f64 200 (-.f64 x y)) |
| 0.0ms | x | @ | 0 | (*.f64 200 (-.f64 x y)) |
| 0.0ms | y | @ | -inf | (*.f64 200 (-.f64 x y)) |
| 1× | batch-egg-rewrite |
| 1528× | rational_best_oopsla_all_46_json_45_simplify-23 |
| 1068× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 970× | rational_best_oopsla_all_46_json_45_simplify-74 |
| 948× | rational_best_oopsla_all_46_json-2 |
| 948× | rational_best_oopsla_all_46_json-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 47 | 13 |
| 2 | 131 | 13 |
| 3 | 407 | 13 |
| 4 | 1831 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 200 (-.f64 x y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 200 (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 200 (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 200 x) (*.f64 y -200))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -200) (*.f64 200 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (+.f64 0 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 200 (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (-.f64 x y) -200))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 200 x) (*.f64 200 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -200) (*.f64 x -200))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 200 x) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 200 y) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 x -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 y (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y))) (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y)))) (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) -200) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (-.f64 x y) -200)))))) |
| 1× | egg-herbie |
| 1172× | rational_best_oopsla_all_46_json_45_simplify-49 |
| 1020× | rational_best_oopsla_all_46_json_45_simplify-7 |
| 834× | rational_best_oopsla_all_46_json_45_simplify-89 |
| 670× | rational_best_oopsla_all_46_json_45_simplify-10 |
| 652× | rational_best_oopsla_all_46_json_45_simplify-37 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 73 | 1202 |
| 1 | 233 | 1118 |
| 2 | 951 | 1118 |
| 3 | 4721 | 1118 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 (-.f64 x y)) 0) |
(+.f64 0 (*.f64 200 (-.f64 x y))) |
(+.f64 (*.f64 200 x) (*.f64 y -200)) |
(+.f64 (*.f64 y -200) (*.f64 200 x)) |
(+.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(+.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (+.f64 0 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(+.f64 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(-.f64 (*.f64 200 (-.f64 x y)) 0) |
(-.f64 0 (*.f64 (-.f64 x y) -200)) |
(-.f64 (*.f64 200 x) (*.f64 200 y)) |
(-.f64 (*.f64 y -200) (*.f64 x -200)) |
(-.f64 (*.f64 (*.f64 200 x) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 200 y) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(-.f64 (*.f64 (*.f64 y -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 x -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(-.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 y (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(/.f64 (*.f64 200 (-.f64 x y)) 1) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y))) (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y)))) (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y)))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(/.f64 (*.f64 (-.f64 x y) -200) -1) |
(neg.f64 (*.f64 (-.f64 x y) -200)) |
| Outputs |
|---|
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 200 x) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 -200 y) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(*.f64 -200 y) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 200 (-.f64 x y)) 0) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(+.f64 0 (*.f64 200 (-.f64 x y))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(+.f64 (*.f64 200 x) (*.f64 y -200)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 y -200) (*.f64 200 x)) |
(+.f64 (*.f64 200 x) (*.f64 -200 y)) |
(+.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(+.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (+.f64 0 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(+.f64 (*.f64 (neg.f64 y) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(-.f64 (*.f64 200 (-.f64 x y)) 0) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(-.f64 0 (*.f64 (-.f64 x y) -200)) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(-.f64 (*.f64 200 x) (*.f64 200 y)) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(-.f64 (*.f64 y -200) (*.f64 x -200)) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(-.f64 (*.f64 (*.f64 200 x) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 200 y) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(-.f64 (*.f64 (*.f64 200 x) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 y 200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(*.f64 (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)) (*.f64 200 (-.f64 x y))) |
(*.f64 200 (*.f64 (/.f64 (*.f64 -200 (-.f64 y x)) (*.f64 -200 (-.f64 y x))) (-.f64 x y))) |
(-.f64 (*.f64 (*.f64 y -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 x -200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(-.f64 (*.f64 (*.f64 200 x) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) (*.f64 (*.f64 y 200) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(*.f64 (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)) (*.f64 200 (-.f64 x y))) |
(*.f64 200 (*.f64 (/.f64 (*.f64 -200 (-.f64 y x)) (*.f64 -200 (-.f64 y x))) (-.f64 x y))) |
(-.f64 (*.f64 x (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 y (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) 1) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)) (/.f64 (*.f64 (-.f64 x y) 400) (*.f64 (-.f64 x y) 400)))) |
(/.f64 (*.f64 -200 (-.f64 y x)) (/.f64 (/.f64 (*.f64 -200 (-.f64 y x)) (*.f64 -200 (-.f64 y x))) (/.f64 (*.f64 -200 (-.f64 y x)) (*.f64 -200 (-.f64 y x))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))) |
(/.f64 (*.f64 -200 (-.f64 y x)) (/.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y))) (*.f64 -200 (/.f64 (-.f64 x y) (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y))) (*.f64 (-.f64 x y) (/.f64 200 (-.f64 x y))))) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y)))) (*.f64 (*.f64 200 (-.f64 x y)) (/.f64 1 (*.f64 200 (-.f64 x y)))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (-.f64 x y) (*.f64 (/.f64 1 (*.f64 200 (-.f64 x y))) 200)) (*.f64 (-.f64 x y) (*.f64 (/.f64 1 (*.f64 200 (-.f64 x y))) 200)))) |
(/.f64 (*.f64 -200 (-.f64 y x)) (/.f64 (*.f64 (*.f64 -200 (-.f64 x y)) (/.f64 1 (*.f64 -200 (-.f64 x y)))) (*.f64 (*.f64 -200 (-.f64 x y)) (/.f64 1 (*.f64 -200 (-.f64 x y)))))) |
(/.f64 (*.f64 -200 (-.f64 y x)) (/.f64 (*.f64 (*.f64 -200 (-.f64 y x)) (/.f64 -1 (*.f64 -200 (-.f64 y x)))) (*.f64 (*.f64 -200 (-.f64 y x)) (/.f64 -1 (*.f64 -200 (-.f64 y x)))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 200 (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(/.f64 (*.f64 200 (-.f64 x y)) (/.f64 (*.f64 200 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 200 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(/.f64 (*.f64 -200 (-.f64 y x)) (/.f64 (*.f64 200 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))) (*.f64 200 (*.f64 (/.f64 (-.f64 x y) (-.f64 x y)) (/.f64 (-.f64 x y) (-.f64 x y)))))) |
(/.f64 (*.f64 (-.f64 x y) -200) -1) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
(neg.f64 (*.f64 (-.f64 x y) -200)) |
(*.f64 200 (-.f64 x y)) |
(*.f64 -200 (-.f64 y x)) |
Compiled 792 to 339 computations (57.2% saved)
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 40 | 2 | 42 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 40 | 3 | 43 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 200 (-.f64 x y)) |
| ▶ | 32.4b | (*.f64 200 x) |
| ▶ | 30.3b | (*.f64 -200 y) |
Compiled 17 to 13 computations (23.5% saved)
Compiled 7 to 5 computations (28.6% saved)
Compiled 7 to 5 computations (28.6% saved)
Compiled 2 to 2 computations (0% saved)
3 alts after pruning (0 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 200 (-.f64 x y)) |
| ✓ | 32.4b | (*.f64 200 x) |
| ✓ | 30.3b | (*.f64 -200 y) |
Compiled 17 to 13 computations (23.5% saved)
| Inputs |
|---|
(*.f64 -200 y) |
(*.f64 200 x) |
(*.f64 200 (-.f64 x y)) |
| Outputs |
|---|
(*.f64 200 (-.f64 x y)) |
4 calls:
| 36.0ms | x |
| 3.0ms | (*.f64 200 (-.f64 x y)) |
| 3.0ms | y |
| 3.0ms | (-.f64 x y) |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | (*.f64 200 (-.f64 x y)) |
| 0.0b | 1 | (-.f64 x y) |
Compiled 31 to 21 computations (32.3% saved)
Total -48.9b remaining (-375.7%)
Threshold costs -48.9b (-375.7%)
| Inputs |
|---|
(*.f64 -200 y) |
(*.f64 200 x) |
| Outputs |
|---|
(*.f64 200 x) |
(*.f64 -200 y) |
(*.f64 200 x) |
(*.f64 -200 y) |
(*.f64 200 x) |
2 calls:
| 13.0ms | x |
| 8.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 13.0b | 5 | x |
| 14.8b | 3 | y |
Compiled 14 to 10 computations (28.6% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 47.0ms | 6.8158203128982855e+137 | 7.000667500227727e+145 |
| 9.0ms | 3.539803586422986e+115 | 2.654584717432952e+116 |
| 6.0ms | 7.436333870155265e-77 | 1.2345907122497826e-76 |
| 11.0ms | -2494444899.537053 | -15301778.689346053 |
| 60.0ms | 382× | body | 256 | valid |
| 4.0ms | 18× | body | 2048 | valid |
| 2.0ms | 11× | body | 1024 | valid |
| 1.0ms | 5× | body | 512 | valid |
Compiled 324 to 269 computations (17% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 91 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(*.f64 200 (-.f64 x y)) |
(if (<=.f64 x -240000000) (*.f64 200 x) (if (<=.f64 x 3976294225804917/32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016) (*.f64 -200 y) (if (<=.f64 x 259999999999999986547442395397283791329714546258505049850784903766317291696671631569272207782904950607708216841207808) (*.f64 200 x) (if (<=.f64 x 700000000000000022989093742443448255290908796451728186858619398381122904829151596880800920939409188878764653349025704905053943443948044288) (*.f64 -200 y) (*.f64 200 x))))) |
(*.f64 -200 y) |
| Outputs |
|---|
(*.f64 200 (-.f64 x y)) |
(if (<=.f64 x -240000000) (*.f64 200 x) (if (<=.f64 x 3976294225804917/32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016) (*.f64 -200 y) (if (<=.f64 x 259999999999999986547442395397283791329714546258505049850784903766317291696671631569272207782904950607708216841207808) (*.f64 200 x) (if (<=.f64 x 700000000000000022989093742443448255290908796451728186858619398381122904829151596880800920939409188878764653349025704905053943443948044288) (*.f64 -200 y) (*.f64 200 x))))) |
(*.f64 -200 y) |
Compiled 45 to 33 computations (26.7% saved)
Compiled 41 to 29 computations (29.3% saved)
Loading profile data...