Time bar (total: 9.4s)
| 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 |
| 53.3% | 50% | 43.7% | 0.1% | 6.2% | 0% | 0% | 7 |
| 63.3% | 59.3% | 34.3% | 0.1% | 6.2% | 0% | 0% | 8 |
| 74.1% | 67.1% | 23.4% | 0.1% | 9.4% | 0% | 0% | 9 |
| 80.2% | 72.6% | 18% | 0.1% | 9.4% | 0% | 0% | 10 |
| 86.4% | 76.9% | 12.1% | 0.1% | 10.9% | 0% | 0% | 11 |
| 89.7% | 79.8% | 9.2% | 0.1% | 10.9% | 0% | 0% | 12 |
Compiled 12 to 10 computations (16.7% saved)
| 2.8s | 8256× | body | 256 | valid |
| 66.0ms | 161× | body | 256 | infinite |
| 2× | egg-herbie |
| 24× | rational.json-simplify-2 |
| 8× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 38 |
| 1 | 19 | 38 |
| 2 | 27 | 38 |
| 3 | 35 | 38 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
(*.f64 (*.f64 (-.f64 y (/.f64 16 116)) 3) x) |
| Outputs |
|---|
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
(*.f64 (*.f64 (-.f64 y (/.f64 16 116)) 3) x) |
(*.f64 x (*.f64 3 (-.f64 y 4/29))) |
(*.f64 3 (*.f64 (-.f64 y 4/29) x)) |
(*.f64 3 (*.f64 x (-.f64 y 4/29))) |
Compiled 13 to 11 computations (15.4% saved)
| 1× | egg-herbie |
| 12× | rational.json-simplify-2 |
| 4× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 19 |
| 1 | 14 | 19 |
| 2 | 18 | 19 |
| 3 | 22 | 19 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
| Outputs |
|---|
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
Compiled 25 to 19 computations (24% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 2 | 3 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 2 | 4 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.6b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ▶ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
Compiled 18 to 14 computations (22.2% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (-.f64 x 4/29) 3) |
| ✓ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
Compiled 21 to 15 computations (28.6% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | 0 | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1.0ms | y | @ | inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1.0ms | x | @ | inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1.0ms | x | @ | 0 | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1.0ms | x | @ | -inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1× | batch-egg-rewrite |
| 1820× | rational.json-5 |
| 1818× | exponential.json-3 |
| 1818× | rational.json-1 |
| 1818× | rational.json-2 |
| 1818× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 74 | 32 |
| 2 | 231 | 32 |
| 3 | 854 | 32 |
| 4 | 3470 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 (-.f64 x 4/29) 3) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x 4/29) 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x 4/29) 3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x 4/29) 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) 3) (/.f64 (*.f64 (-.f64 x 4/29) 3) (*.f64 (-.f64 x 4/29) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x 4/29) 3) 1))))) |
| 1× | egg-herbie |
| 1290× | rational.json-simplify-49 |
| 1090× | rational.json-simplify-43 |
| 858× | rational.json-simplify-111 |
| 848× | rational.json-simplify-76 |
| 820× | rational.json-simplify-55 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 36 | 810 |
| 1 | 66 | 756 |
| 2 | 182 | 756 |
| 3 | 619 | 756 |
| 4 | 2969 | 756 |
| 5 | 6361 | 756 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
-12/29 |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 3 x) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 3 x) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(+.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(+.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y))) |
(-.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y)))) |
(pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(+.f64 (*.f64 (-.f64 x 4/29) 3) 0) |
(+.f64 0 (*.f64 (-.f64 x 4/29) 3)) |
(-.f64 (*.f64 (-.f64 x 4/29) 3) 0) |
(/.f64 (*.f64 (-.f64 x 4/29) 3) 1) |
(/.f64 (*.f64 (-.f64 x 4/29) 3) (/.f64 (*.f64 (-.f64 x 4/29) 3) (*.f64 (-.f64 x 4/29) 3))) |
(pow.f64 (*.f64 (-.f64 x 4/29) 3) 1) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
-12/29 |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 3 x) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 3 x) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(-.f64 (*.f64 3 x) 12/29) |
(+.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(+.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(-.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y)))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(+.f64 (*.f64 (-.f64 x 4/29) 3) 0) |
(*.f64 3 (-.f64 x 4/29)) |
(+.f64 0 (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 3 (-.f64 x 4/29)) |
(-.f64 (*.f64 (-.f64 x 4/29) 3) 0) |
(*.f64 3 (-.f64 x 4/29)) |
(/.f64 (*.f64 (-.f64 x 4/29) 3) 1) |
(*.f64 3 (-.f64 x 4/29)) |
(/.f64 (*.f64 (-.f64 x 4/29) 3) (/.f64 (*.f64 (-.f64 x 4/29) 3) (*.f64 (-.f64 x 4/29) 3))) |
(*.f64 3 (-.f64 x 4/29)) |
(pow.f64 (*.f64 (-.f64 x 4/29) 3) 1) |
(*.f64 3 (-.f64 x 4/29)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.5b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
Compiled 19 to 13 computations (31.6% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 0.0ms | x | @ | inf | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 0.0ms | y | @ | inf | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 0.0ms | x | @ | -inf | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 0.0ms | y | @ | -inf | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 1× | batch-egg-rewrite |
| 1922× | rational.json-5 |
| 1920× | exponential.json-3 |
| 1920× | rational.json-1 |
| 1920× | rational.json-2 |
| 1920× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 19 |
| 1 | 76 | 19 |
| 2 | 246 | 19 |
| 3 | 906 | 19 |
| 4 | 3673 | 19 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1))))) |
| 1× | egg-herbie |
| 1248× | rational.json-simplify-111 |
| 1110× | rational.json-simplify-49 |
| 1046× | rational.json-simplify-54 |
| 920× | rational.json-simplify-43 |
| 902× | rational.json-simplify-76 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 600 |
| 1 | 47 | 546 |
| 2 | 129 | 546 |
| 3 | 445 | 546 |
| 4 | 2027 | 546 |
| 5 | 4854 | 546 |
| 6 | 7349 | 546 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(+.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(+.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y))) |
(-.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y)))) |
(pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 x (*.f64 y 3)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 x (*.f64 y 3)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(+.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(+.f64 0 (*.f64 (-.f64 x 4/29) (*.f64 3 y))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(-.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 0) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (/.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) (*.f64 (-.f64 x 4/29) (*.f64 3 y)))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(pow.f64 (*.f64 (-.f64 x 4/29) (*.f64 3 y)) 1) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
Compiled 352 to 254 computations (27.8% saved)
8 alts after pruning (6 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 36 | 6 | 42 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 36 | 8 | 44 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.6b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| ▶ | 36.8b | (*.f64 (*.f64 3 x) y) |
| ▶ | 36.9b | (*.f64 x (*.f64 y 3)) |
| 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) | |
| ▶ | 36.8b | (*.f64 3 (*.f64 y x)) |
| ▶ | 25.6b | (*.f64 -12/29 y) |
Compiled 106 to 80 computations (24.5% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 (*.f64 3 x) 12/29) |
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
Compiled 21 to 15 computations (28.6% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | y | @ | 0 | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 1.0ms | x | @ | 0 | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 1.0ms | y | @ | inf | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 0.0ms | x | @ | -inf | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 0.0ms | x | @ | inf | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 1× | batch-egg-rewrite |
| 1648× | rational.json-5 |
| 1646× | exponential.json-3 |
| 1646× | rational.json-1 |
| 1646× | rational.json-2 |
| 1646× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 74 | 32 |
| 2 | 227 | 32 |
| 3 | 816 | 32 |
| 4 | 3185 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
(-.f64 (*.f64 3 x) 12/29) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (*.f64 3 x) 12/29) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (*.f64 (-.f64 (*.f64 3 x) 12/29) y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 3 x) 12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 3 x) 12/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 3 x) 12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 3 x) 12/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (-.f64 (*.f64 3 x) 12/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (/.f64 1 (-.f64 (*.f64 3 x) 12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 3 x) 12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 3 x) 12/29) 1))))) |
| 1× | egg-herbie |
| 1634× | rational.json-simplify-47 |
| 1402× | rational.json-simplify-2 |
| 966× | rational.json-simplify-50 |
| 956× | rational.json-simplify-43 |
| 878× | rational.json-simplify-58 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 41 | 556 |
| 1 | 74 | 502 |
| 2 | 284 | 502 |
| 3 | 1741 | 502 |
| 4 | 5824 | 502 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
-12/29 |
(*.f64 3 x) |
(*.f64 3 x) |
(+.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0) |
(+.f64 0 (*.f64 (-.f64 (*.f64 3 x) 12/29) y)) |
(-.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0) |
(/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1) |
(/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (*.f64 (-.f64 (*.f64 3 x) 12/29) y))) |
(pow.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1) |
(+.f64 (-.f64 (*.f64 3 x) 12/29) 0) |
(+.f64 0 (-.f64 (*.f64 3 x) 12/29)) |
(*.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
(*.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(*.f64 1 (-.f64 (*.f64 3 x) 12/29)) |
(*.f64 (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (-.f64 (*.f64 3 x) 12/29)) |
(*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (/.f64 1 (-.f64 (*.f64 3 x) 12/29))) |
(*.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))) |
(*.f64 (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))) |
(/.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
(/.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(pow.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 x (*.f64 y 3)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 x (*.f64 y 3)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
-12/29 |
(*.f64 3 x) |
(*.f64 3 x) |
(+.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(+.f64 0 (*.f64 (-.f64 (*.f64 3 x) 12/29) y)) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(-.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 0) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (/.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) (*.f64 (-.f64 (*.f64 3 x) 12/29) y))) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(pow.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) y) 1) |
(*.f64 y (-.f64 (*.f64 3 x) 12/29)) |
(+.f64 (-.f64 (*.f64 3 x) 12/29) 0) |
(-.f64 (*.f64 3 x) 12/29) |
(+.f64 0 (-.f64 (*.f64 3 x) 12/29)) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 1 (-.f64 (*.f64 3 x) 12/29)) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (-.f64 (*.f64 3 x) 12/29)) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (/.f64 1 (-.f64 (*.f64 3 x) 12/29))) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))) |
(-.f64 (*.f64 3 x) 12/29) |
(*.f64 (/.f64 (/.f64 1 (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) (*.f64 (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)) (*.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29)))) |
(-.f64 (*.f64 3 x) 12/29) |
(/.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
(-.f64 (*.f64 3 x) 12/29) |
(/.f64 (-.f64 (*.f64 3 x) 12/29) (/.f64 (-.f64 (*.f64 3 x) 12/29) (-.f64 (*.f64 3 x) 12/29))) |
(-.f64 (*.f64 3 x) 12/29) |
(pow.f64 (-.f64 (*.f64 3 x) 12/29) 1) |
(-.f64 (*.f64 3 x) 12/29) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 -12/29 y) |
Compiled 7 to 5 computations (28.6% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (*.f64 -12/29 y) |
| 0.0ms | y | @ | inf | (*.f64 -12/29 y) |
| 0.0ms | y | @ | -inf | (*.f64 -12/29 y) |
| 1× | batch-egg-rewrite |
| 966× | rational.json-5 |
| 964× | exponential.json-3 |
| 964× | rational.json-1 |
| 964× | rational.json-2 |
| 964× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 42 | 7 |
| 2 | 141 | 7 |
| 3 | 507 | 7 |
| 4 | 1924 | 7 |
| 5 | 7765 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -12/29 y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -12/29 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -12/29 y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 -12/29 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 -12/29 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -12/29 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -12/29 y) (/.f64 (*.f64 -12/29 y) (*.f64 -12/29 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -12/29 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 -12/29 y))))))) |
| 1× | egg-herbie |
| 1672× | rational.json-simplify-47 |
| 758× | rational.json-simplify-1 |
| 702× | rational.json-simplify-111 |
| 674× | rational.json-simplify-2 |
| 674× | rational.json-simplify-104 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 63 |
| 1 | 45 | 63 |
| 2 | 113 | 63 |
| 3 | 343 | 63 |
| 4 | 1332 | 63 |
| 5 | 3346 | 63 |
| 6 | 6025 | 63 |
| 7 | 7781 | 63 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 -12/29 y) 0) |
(+.f64 0 (*.f64 -12/29 y)) |
(-.f64 (*.f64 -12/29 y) 0) |
(-.f64 0 (neg.f64 (*.f64 -12/29 y))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 -12/29 y))) 1) |
(/.f64 (*.f64 -12/29 y) 1) |
(/.f64 (*.f64 -12/29 y) (/.f64 (*.f64 -12/29 y) (*.f64 -12/29 y))) |
(pow.f64 (*.f64 -12/29 y) 1) |
(neg.f64 (neg.f64 (*.f64 -12/29 y))) |
| Outputs |
|---|
(+.f64 (*.f64 -12/29 y) 0) |
(*.f64 -12/29 y) |
(+.f64 0 (*.f64 -12/29 y)) |
(*.f64 -12/29 y) |
(-.f64 (*.f64 -12/29 y) 0) |
(*.f64 -12/29 y) |
(-.f64 0 (neg.f64 (*.f64 -12/29 y))) |
(*.f64 -12/29 y) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 -12/29 y))) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 -12/29 y) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 -12/29 y) (/.f64 (*.f64 -12/29 y) (*.f64 -12/29 y))) |
(*.f64 -12/29 y) |
(pow.f64 (*.f64 -12/29 y) 1) |
(*.f64 -12/29 y) |
(neg.f64 (neg.f64 (*.f64 -12/29 y))) |
(*.f64 -12/29 y) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 3 (*.f64 y x)) |
Compiled 13 to 6 computations (53.8% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y | @ | inf | (*.f64 3 (*.f64 y x)) |
| 1.0ms | y | @ | 0 | (*.f64 3 (*.f64 y x)) |
| 1.0ms | x | @ | inf | (*.f64 3 (*.f64 y x)) |
| 1.0ms | x | @ | 0 | (*.f64 3 (*.f64 y x)) |
| 0.0ms | y | @ | -inf | (*.f64 3 (*.f64 y x)) |
| 1× | batch-egg-rewrite |
| 1660× | rational.json-5 |
| 1658× | exponential.json-3 |
| 1658× | rational.json-1 |
| 1658× | rational.json-2 |
| 1658× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 61 | 13 |
| 2 | 209 | 13 |
| 3 | 778 | 13 |
| 4 | 3167 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 3 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 y x)) (/.f64 (*.f64 3 (*.f64 y x)) (*.f64 3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 y x)) 1))))) |
| 1× | egg-herbie |
| 1386× | rational.json-simplify-79 |
| 922× | rational.json-simplify-80 |
| 904× | rational.json-simplify-2 |
| 752× | rational.json-simplify-76 |
| 720× | rational.json-simplify-111 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 78 |
| 1 | 30 | 78 |
| 2 | 96 | 78 |
| 3 | 325 | 78 |
| 4 | 1405 | 78 |
| 5 | 3275 | 78 |
| 6 | 4816 | 78 |
| 7 | 6253 | 78 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 3 (*.f64 y x)) 0) |
(+.f64 0 (*.f64 3 (*.f64 y x))) |
(-.f64 (*.f64 3 (*.f64 y x)) 0) |
(/.f64 (*.f64 3 (*.f64 y x)) 1) |
(/.f64 (*.f64 3 (*.f64 y x)) (/.f64 (*.f64 3 (*.f64 y x)) (*.f64 3 (*.f64 y x)))) |
(pow.f64 (*.f64 3 (*.f64 y x)) 1) |
| Outputs |
|---|
(+.f64 (*.f64 3 (*.f64 y x)) 0) |
(*.f64 3 (*.f64 y x)) |
(+.f64 0 (*.f64 3 (*.f64 y x))) |
(*.f64 3 (*.f64 y x)) |
(-.f64 (*.f64 3 (*.f64 y x)) 0) |
(*.f64 3 (*.f64 y x)) |
(/.f64 (*.f64 3 (*.f64 y x)) 1) |
(*.f64 3 (*.f64 y x)) |
(/.f64 (*.f64 3 (*.f64 y x)) (/.f64 (*.f64 3 (*.f64 y x)) (*.f64 3 (*.f64 y x)))) |
(*.f64 3 (*.f64 y x)) |
(pow.f64 (*.f64 3 (*.f64 y x)) 1) |
(*.f64 3 (*.f64 y x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.5b | (*.f64 x (*.f64 y 3)) |
Compiled 13 to 8 computations (38.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (*.f64 x (*.f64 y 3)) |
| 0.0ms | x | @ | inf | (*.f64 x (*.f64 y 3)) |
| 0.0ms | y | @ | -inf | (*.f64 x (*.f64 y 3)) |
| 0.0ms | y | @ | inf | (*.f64 x (*.f64 y 3)) |
| 0.0ms | x | @ | -inf | (*.f64 x (*.f64 y 3)) |
| 1× | batch-egg-rewrite |
| 1688× | rational.json-5 |
| 1686× | exponential.json-3 |
| 1686× | rational.json-1 |
| 1686× | rational.json-2 |
| 1686× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 61 | 13 |
| 2 | 209 | 13 |
| 3 | 783 | 13 |
| 4 | 3212 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 x (*.f64 y 3)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 y 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y 3)) (/.f64 (*.f64 x (*.f64 y 3)) (*.f64 x (*.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 y 3)) 1))))) |
| 1× | egg-herbie |
| 1508× | rational.json-simplify-79 |
| 1064× | rational.json-simplify-2 |
| 872× | rational.json-simplify-76 |
| 852× | rational.json-simplify-111 |
| 762× | rational.json-simplify-104 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 390 |
| 1 | 36 | 390 |
| 2 | 96 | 390 |
| 3 | 336 | 390 |
| 4 | 1527 | 390 |
| 5 | 3746 | 390 |
| 6 | 5466 | 390 |
| 7 | 7052 | 390 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 x (*.f64 y 3)) 0) |
(+.f64 0 (*.f64 x (*.f64 y 3))) |
(-.f64 (*.f64 x (*.f64 y 3)) 0) |
(/.f64 (*.f64 x (*.f64 y 3)) 1) |
(/.f64 (*.f64 x (*.f64 y 3)) (/.f64 (*.f64 x (*.f64 y 3)) (*.f64 x (*.f64 y 3)))) |
(pow.f64 (*.f64 x (*.f64 y 3)) 1) |
| Outputs |
|---|
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 x (*.f64 y 3)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 0 (*.f64 x (*.f64 y 3))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(-.f64 (*.f64 x (*.f64 y 3)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 y 3)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 y 3)) (/.f64 (*.f64 x (*.f64 y 3)) (*.f64 x (*.f64 y 3)))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(pow.f64 (*.f64 x (*.f64 y 3)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (*.f64 3 x) y) |
Compiled 13 to 8 computations (38.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | -inf | (*.f64 (*.f64 3 x) y) |
| 0.0ms | x | @ | 0 | (*.f64 (*.f64 3 x) y) |
| 0.0ms | x | @ | inf | (*.f64 (*.f64 3 x) y) |
| 0.0ms | x | @ | -inf | (*.f64 (*.f64 3 x) y) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 3 x) y) |
| 1× | batch-egg-rewrite |
| 1622× | rational.json-5 |
| 1620× | exponential.json-3 |
| 1620× | rational.json-1 |
| 1620× | rational.json-2 |
| 1620× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 59 | 13 |
| 2 | 196 | 13 |
| 3 | 743 | 13 |
| 4 | 3072 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 3 x) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 3 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (*.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 x y)) (/.f64 (*.f64 3 (*.f64 x y)) (*.f64 3 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 x y)) 1))))) |
| 1× | egg-herbie |
| 1448× | rational.json-simplify-79 |
| 1134× | rational.json-simplify-2 |
| 816× | rational.json-simplify-76 |
| 790× | rational.json-simplify-111 |
| 750× | rational.json-simplify-104 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 390 |
| 1 | 33 | 390 |
| 2 | 104 | 390 |
| 3 | 377 | 390 |
| 4 | 1636 | 390 |
| 5 | 3918 | 390 |
| 6 | 5610 | 390 |
| 7 | 7131 | 390 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 x y)) 0) |
(+.f64 0 (*.f64 3 (*.f64 x y))) |
(-.f64 (*.f64 3 (*.f64 x y)) 0) |
(/.f64 (*.f64 3 (*.f64 x y)) 1) |
(/.f64 (*.f64 3 (*.f64 x y)) (/.f64 (*.f64 3 (*.f64 x y)) (*.f64 3 (*.f64 x y)))) |
(pow.f64 (*.f64 3 (*.f64 x y)) 1) |
| Outputs |
|---|
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 3 (*.f64 x y)) 0) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 0 (*.f64 3 (*.f64 x y))) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(-.f64 (*.f64 3 (*.f64 x y)) 0) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 3 (*.f64 x y)) 1) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 3 (*.f64 x y)) (/.f64 (*.f64 3 (*.f64 x y)) (*.f64 3 (*.f64 x y)))) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(pow.f64 (*.f64 3 (*.f64 x y)) 1) |
(*.f64 y (*.f64 x 3)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
Compiled 623 to 446 computations (28.4% saved)
8 alts after pruning (1 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 64 | 0 | 64 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 6 | 6 |
| Total | 64 | 8 | 72 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.6b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| ✓ | 36.8b | (*.f64 (*.f64 3 x) y) |
| ✓ | 36.9b | (*.f64 x (*.f64 y 3)) |
| ▶ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 36.8b | (*.f64 3 (*.f64 y x)) |
| ✓ | 25.6b | (*.f64 -12/29 y) |
Compiled 62 to 47 computations (24.2% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 y (-.f64 x 4/29)) |
| ✓ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
Compiled 21 to 14 computations (33.3% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | -inf | (*.f64 y (-.f64 x 4/29)) |
| 0.0ms | x | @ | -inf | (*.f64 y (-.f64 x 4/29)) |
| 0.0ms | y | @ | 0 | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 0.0ms | y | @ | inf | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 0.0ms | x | @ | -inf | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 1× | batch-egg-rewrite |
| 1858× | rational.json-5 |
| 1856× | exponential.json-3 |
| 1856× | rational.json-1 |
| 1856× | rational.json-2 |
| 1856× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 76 | 32 |
| 2 | 244 | 32 |
| 3 | 890 | 32 |
| 4 | 3565 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (-.f64 x 4/29)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 3 (*.f64 y (-.f64 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (*.f64 3 (*.f64 y (-.f64 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x 4/29)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x 4/29)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x 4/29)) (/.f64 (*.f64 y (-.f64 x 4/29)) (*.f64 y (-.f64 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x 4/29)) 1))))) |
| 1× | egg-herbie |
| 1662× | rational.json-simplify-47 |
| 988× | rational.json-simplify-104 |
| 874× | rational.json-simplify-49 |
| 862× | rational.json-simplify-54 |
| 772× | rational.json-simplify-43 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 33 | 588 |
| 1 | 64 | 534 |
| 2 | 172 | 534 |
| 3 | 524 | 534 |
| 4 | 2325 | 534 |
| 5 | 5494 | 534 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 -4/29 y) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(+.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0) |
(+.f64 0 (*.f64 3 (*.f64 y (-.f64 x 4/29)))) |
(-.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0) |
(/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1) |
(/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (*.f64 3 (*.f64 y (-.f64 x 4/29))))) |
(pow.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1) |
(+.f64 (*.f64 y (-.f64 x 4/29)) 0) |
(+.f64 0 (*.f64 y (-.f64 x 4/29))) |
(-.f64 (*.f64 y (-.f64 x 4/29)) 0) |
(/.f64 (*.f64 y (-.f64 x 4/29)) 1) |
(/.f64 (*.f64 y (-.f64 x 4/29)) (/.f64 (*.f64 y (-.f64 x 4/29)) (*.f64 y (-.f64 x 4/29)))) |
(pow.f64 (*.f64 y (-.f64 x 4/29)) 1) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 x 3))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 -4/29 x)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(+.f64 0 (*.f64 3 (*.f64 y (-.f64 x 4/29)))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(-.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 0) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (/.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) (*.f64 3 (*.f64 y (-.f64 x 4/29))))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(pow.f64 (*.f64 3 (*.f64 y (-.f64 x 4/29))) 1) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (-.f64 x 4/29) (*.f64 y 3)) |
(+.f64 (*.f64 y (-.f64 x 4/29)) 0) |
(*.f64 y (-.f64 x 4/29)) |
(+.f64 0 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (-.f64 x 4/29)) |
(-.f64 (*.f64 y (-.f64 x 4/29)) 0) |
(*.f64 y (-.f64 x 4/29)) |
(/.f64 (*.f64 y (-.f64 x 4/29)) 1) |
(*.f64 y (-.f64 x 4/29)) |
(/.f64 (*.f64 y (-.f64 x 4/29)) (/.f64 (*.f64 y (-.f64 x 4/29)) (*.f64 y (-.f64 x 4/29)))) |
(*.f64 y (-.f64 x 4/29)) |
(pow.f64 (*.f64 y (-.f64 x 4/29)) 1) |
(*.f64 y (-.f64 x 4/29)) |
Compiled 243 to 174 computations (28.4% saved)
10 alts after pruning (2 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 27 | 2 | 29 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 7 | 7 |
| Total | 27 | 10 | 37 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.6b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| ✓ | 36.8b | (*.f64 (*.f64 3 x) y) |
| ✓ | 36.9b | (*.f64 x (*.f64 y 3)) |
| ▶ | 0.3b | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| ✓ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 36.8b | (*.f64 3 (*.f64 y x)) |
| ▶ | 25.8b | (*.f64 3 (*.f64 y -4/29)) |
| ✓ | 25.6b | (*.f64 -12/29 y) |
Compiled 80 to 61 computations (23.8% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 y -4/29) |
| ✓ | 0.3b | (*.f64 3 (*.f64 y -4/29)) |
Compiled 13 to 10 computations (23.1% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | inf | (*.f64 y -4/29) |
| 0.0ms | y | @ | -inf | (*.f64 y -4/29) |
| 0.0ms | y | @ | 0 | (*.f64 y -4/29) |
| 0.0ms | y | @ | 0 | (*.f64 3 (*.f64 y -4/29)) |
| 0.0ms | y | @ | inf | (*.f64 3 (*.f64 y -4/29)) |
| 1× | batch-egg-rewrite |
| 1446× | rational.json-5 |
| 1444× | exponential.json-3 |
| 1444× | rational.json-1 |
| 1444× | rational.json-2 |
| 1444× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 14 |
| 1 | 61 | 14 |
| 2 | 192 | 14 |
| 3 | 696 | 14 |
| 4 | 2859 | 14 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 y -4/29) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -4/29) (*.f64 y -8/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y -12/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -8/29) (*.f64 y -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y -12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y -12/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -12/29) (/.f64 (*.f64 y -12/29) (*.f64 y -12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y -12/29))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -8/29) (*.f64 y -8/29)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y -4/29))))))) |
| 1× | egg-herbie |
| 1010× | rational.json-simplify-2 |
| 898× | rational.json-simplify-79 |
| 802× | rational.json-simplify-111 |
| 680× | rational.json-simplify-1 |
| 606× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 43 | 332 |
| 1 | 85 | 332 |
| 2 | 200 | 332 |
| 3 | 589 | 332 |
| 4 | 2167 | 332 |
| 5 | 4707 | 332 |
| 6 | 6905 | 332 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(*.f64 -4/29 y) |
(+.f64 (*.f64 y -4/29) (*.f64 y -8/29)) |
(+.f64 (*.f64 y -12/29) 0) |
(+.f64 0 (*.f64 y -12/29)) |
(+.f64 (*.f64 y -8/29) (*.f64 y -4/29)) |
(-.f64 (*.f64 y -12/29) 0) |
(-.f64 0 (neg.f64 (*.f64 y -12/29))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -12/29))) 1) |
(/.f64 (*.f64 y -12/29) 1) |
(/.f64 (*.f64 y -12/29) (/.f64 (*.f64 y -12/29) (*.f64 y -12/29))) |
(pow.f64 (*.f64 y -12/29) 1) |
(neg.f64 (neg.f64 (*.f64 y -12/29))) |
(+.f64 (*.f64 y -4/29) 0) |
(+.f64 0 (*.f64 y -4/29)) |
(-.f64 (*.f64 y -4/29) 0) |
(-.f64 0 (neg.f64 (*.f64 y -4/29))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1) |
(/.f64 (*.f64 y -4/29) 1) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -8/29) (*.f64 y -8/29))) |
(pow.f64 (*.f64 y -4/29) 1) |
(neg.f64 (neg.f64 (*.f64 y -4/29))) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -12/29 y) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(+.f64 (*.f64 y -4/29) (*.f64 y -8/29)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -12/29) 0) |
(*.f64 -12/29 y) |
(+.f64 0 (*.f64 y -12/29)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -8/29) (*.f64 y -4/29)) |
(*.f64 -12/29 y) |
(-.f64 (*.f64 y -12/29) 0) |
(*.f64 -12/29 y) |
(-.f64 0 (neg.f64 (*.f64 y -12/29))) |
(*.f64 -12/29 y) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -12/29))) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -12/29) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -12/29) (/.f64 (*.f64 y -12/29) (*.f64 y -12/29))) |
(*.f64 -12/29 y) |
(pow.f64 (*.f64 y -12/29) 1) |
(*.f64 -12/29 y) |
(neg.f64 (neg.f64 (*.f64 y -12/29))) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -4/29) 0) |
(*.f64 y -4/29) |
(+.f64 0 (*.f64 y -4/29)) |
(*.f64 y -4/29) |
(-.f64 (*.f64 y -4/29) 0) |
(*.f64 y -4/29) |
(-.f64 0 (neg.f64 (*.f64 y -4/29))) |
(*.f64 y -4/29) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -8/29) (*.f64 y -8/29))) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -16/29) (*.f64 y -16/29))) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -32/29) (*.f64 y -32/29))) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -4/29) (*.f64 y -4/29))) |
(pow.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
(neg.f64 (neg.f64 (*.f64 y -4/29))) |
(*.f64 y -4/29) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
| ✓ | 0.1b | (*.f64 -4/29 y) |
| ✓ | 0.3b | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
Compiled 28 to 15 computations (46.4% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | -inf | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 1.0ms | y | @ | inf | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 0.0ms | x | @ | 0 | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 0.0ms | y | @ | 0 | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 0.0ms | x | @ | -inf | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 1× | batch-egg-rewrite |
| 920× | rational.json-simplify-54 |
| 890× | rational.json-simplify-79 |
| 722× | rational.json-simplify-47 |
| 634× | rational.json-simplify-49 |
| 544× | rational.json-simplify-58 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 39 |
| 1 | 86 | 39 |
| 2 | 272 | 39 |
| 3 | 1016 | 39 |
| 4 | 4164 | 39 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
(*.f64 -4/29 y) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -4/29) (+.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 (+.f64 x -4/29) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 y (+.f64 x -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 (+.f64 x x) -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -8/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (*.f64 (+.f64 x -4/29) (*.f64 3 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -4/29) (*.f64 y -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y -4/29))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 x -4/29)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) (-.f64 1 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y x))) (-.f64 1 (*.f64 y -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y -4/29) (-.f64 -1 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y x) (-.f64 -1 (*.f64 y -4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 x -4/29)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 x -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 x -4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (+.f64 x -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x -4/29) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 1 (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (+.f64 x -4/29) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 x -4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 x -4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (+.f64 x -4/29)))))))) |
| 1× | egg-herbie |
| 1286× | rational.json-simplify-49 |
| 1210× | rational.json-simplify-2 |
| 1078× | rational.json-simplify-54 |
| 864× | rational.json-simplify-41 |
| 644× | rational.json-simplify-42 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 122 | 1854 |
| 1 | 286 | 1596 |
| 2 | 841 | 1416 |
| 3 | 2732 | 1376 |
| 4 | 7774 | 1376 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -4/29 y) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 x -4/29)))) |
(+.f64 (*.f64 y -4/29) (+.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(+.f64 0 (*.f64 (+.f64 x -4/29) (*.f64 3 y))) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 (+.f64 x x) -4/29))) |
(+.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -8/29))) |
(-.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(-.f64 0 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) 1) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(neg.f64 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(+.f64 (*.f64 y -4/29) 0) |
(+.f64 0 (*.f64 y -4/29)) |
(-.f64 (*.f64 y -4/29) 0) |
(-.f64 0 (neg.f64 (*.f64 y -4/29))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1) |
(/.f64 (*.f64 y -4/29) 1) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -4/29) (*.f64 y -4/29))) |
(pow.f64 (*.f64 y -4/29) 1) |
(neg.f64 (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(-.f64 (*.f64 y (+.f64 x -4/29)) 0) |
(-.f64 0 (neg.f64 (*.f64 y (+.f64 x -4/29)))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) (-.f64 1 (*.f64 y x))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y x))) (-.f64 1 (*.f64 y -4/29))) |
(-.f64 (-.f64 (*.f64 y -4/29) (-.f64 -1 (*.f64 y x))) 1) |
(-.f64 (-.f64 (*.f64 y x) (-.f64 -1 (*.f64 y -4/29))) 1) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 x -4/29)))) 1) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(*.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 1 (*.f64 y (+.f64 x -4/29))) |
(*.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) y) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 1 (*.f64 y (+.f64 x -4/29)))) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1)) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 (*.f64 y y) (*.f64 (+.f64 x -4/29) (/.f64 1 y))) |
(*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) |
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) |
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))))) |
(/.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(/.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(pow.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(neg.f64 (neg.f64 (*.f64 y (+.f64 x -4/29)))) |
| Outputs |
|---|
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 y (*.f64 (+.f64 4/29 (*.f64 x -1)) -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 y (*.f64 -3 (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (*.f64 y -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 y (*.f64 (+.f64 4/29 (*.f64 x -1)) -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 y (*.f64 -3 (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (*.f64 y -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 y (*.f64 (+.f64 4/29 (*.f64 x -1)) -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 y (*.f64 -3 (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (*.f64 y -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 y (*.f64 (+.f64 4/29 (*.f64 x -1)) -3)) |
(*.f64 -3 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 y (*.f64 -3 (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (*.f64 y -3)) |
(*.f64 -12/29 y) |
(*.f64 y -12/29) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 3 (*.f64 y x)) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -12/29) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 y (-.f64 x 4/29)) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 x -1)))) |
(neg.f64 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (neg.f64 y)) |
(*.f64 y (-.f64 -4/29 (neg.f64 x))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 x -1)))) |
(neg.f64 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (neg.f64 y)) |
(*.f64 y (-.f64 -4/29 (neg.f64 x))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 x -1)))) |
(neg.f64 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (neg.f64 y)) |
(*.f64 y (-.f64 -4/29 (neg.f64 x))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 -1 x)))) |
(*.f64 -1 (*.f64 y (+.f64 4/29 (*.f64 x -1)))) |
(neg.f64 (*.f64 y (+.f64 4/29 (neg.f64 x)))) |
(*.f64 (+.f64 4/29 (neg.f64 x)) (neg.f64 y)) |
(*.f64 y (-.f64 -4/29 (neg.f64 x))) |
(*.f64 -4/29 y) |
(*.f64 y -4/29) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 x -4/29)))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y -4/29) (+.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 0 (*.f64 (+.f64 x -4/29) (*.f64 3 y))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (*.f64 y (+.f64 (+.f64 x x) -4/29))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 (+.f64 x x) -4/29)) (*.f64 y (+.f64 x -8/29))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(-.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(-.f64 0 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) 1) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(neg.f64 (neg.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)))) |
(+.f64 (*.f64 y (+.f64 x -8/29)) (+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y x))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -4/29)) (+.f64 x -8/29))) |
(*.f64 3 (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y -4/29) 0) |
(*.f64 y -4/29) |
(+.f64 0 (*.f64 y -4/29)) |
(*.f64 y -4/29) |
(-.f64 (*.f64 y -4/29) 0) |
(*.f64 y -4/29) |
(-.f64 0 (neg.f64 (*.f64 y -4/29))) |
(*.f64 y -4/29) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) 1) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -4/29) (/.f64 (*.f64 y -4/29) (*.f64 y -4/29))) |
(*.f64 y -4/29) |
(pow.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
(neg.f64 (neg.f64 (*.f64 y -4/29))) |
(*.f64 y -4/29) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (*.f64 y (+.f64 x -4/29)) 0) |
(*.f64 y (+.f64 x -4/29)) |
(-.f64 0 (neg.f64 (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y -4/29))) (-.f64 1 (*.f64 y x))) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y x))) (-.f64 1 (*.f64 y -4/29))) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (-.f64 (*.f64 y -4/29) (-.f64 -1 (*.f64 y x))) 1) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (-.f64 (*.f64 y x) (-.f64 -1 (*.f64 y -4/29))) 1) |
(-.f64 (*.f64 y x) (neg.f64 (*.f64 y -4/29))) |
(-.f64 (*.f64 y -4/29) (neg.f64 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 y -4/29)) |
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 x -4/29)))) 1) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 1 (*.f64 y (+.f64 x -4/29))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (+.f64 x -4/29) y) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 1 (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (/.f64 (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 y y) (*.f64 (+.f64 x -4/29) (/.f64 1 y))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) 1) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) (*.f64 (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29))) (*.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))))) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 y (+.f64 x -4/29)) (/.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
(pow.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(*.f64 y (+.f64 x -4/29)) |
(neg.f64 (neg.f64 (*.f64 y (+.f64 x -4/29)))) |
(*.f64 y (+.f64 x -4/29)) |
Compiled 1207 to 856 computations (29.1% saved)
11 alts after pruning (1 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 101 | 1 | 102 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 9 | 9 |
| Total | 101 | 11 | 112 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.6b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| ✓ | 36.8b | (*.f64 (*.f64 3 x) y) |
| ✓ | 36.9b | (*.f64 x (*.f64 y 3)) |
| ✓ | 0.3b | (*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
| 28.2b | (*.f64 3 (*.f64 (*.f64 y y) (*.f64 (+.f64 x -4/29) (/.f64 1 y)))) | |
| ✓ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 36.8b | (*.f64 3 (*.f64 y x)) |
| ✓ | 25.8b | (*.f64 3 (*.f64 y -4/29)) |
| ✓ | 25.6b | (*.f64 -12/29 y) |
Compiled 95 to 72 computations (24.2% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 y 3)) |
(*.f64 (*.f64 3 x) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
(*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
(*.f64 3 (+.f64 (*.f64 y x) (*.f64 -4/29 y))) |
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
(*.f64 3 (*.f64 (*.f64 y y) (*.f64 (+.f64 x -4/29) (/.f64 1 y)))) |
| Outputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
5 calls:
| 20.0ms | (*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
| 19.0ms | y |
| 12.0ms | x |
| 8.0ms | (-.f64 x (/.f64 16 116)) |
| 8.0ms | (*.f64 (-.f64 x (/.f64 16 116)) 3) |
| Error | Segments | Branch |
|---|---|---|
| 0.2b | 1 | x |
| 0.2b | 1 | y |
| 0.2b | 1 | (*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
| 0.2b | 1 | (*.f64 (-.f64 x (/.f64 16 116)) 3) |
| 0.2b | 1 | (-.f64 x (/.f64 16 116)) |
Compiled 117 to 85 computations (27.4% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 y 3)) |
(*.f64 (*.f64 3 x) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| Outputs |
|---|
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
2 calls:
| 195.0ms | y |
| 8.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.3b | 1 | x |
| 0.3b | 1 | y |
Compiled 38 to 26 computations (31.6% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 y 3)) |
(*.f64 (*.f64 3 x) y) |
| Outputs |
|---|
(*.f64 (*.f64 3 x) y) |
(*.f64 -12/29 y) |
(*.f64 (*.f64 3 x) y) |
2 calls:
| 113.0ms | y |
| 30.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.1b | 3 | x |
| 18.1b | 11 | y |
Compiled 31 to 21 computations (32.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 32.0ms | 4.5550488334996883e-10 | 2.6601895447352484 |
| 37.0ms | -83.46497177913076 | -4.234858206804041e-12 |
| 60.0ms | 320× | body | 256 | valid |
Compiled 296 to 233 computations (21.3% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 y 3)) |
| Outputs |
|---|
(*.f64 x (*.f64 y 3)) |
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y x)) |
2 calls:
| 110.0ms | y |
| 24.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.1b | 3 | x |
| 18.1b | 11 | y |
Compiled 26 to 18 computations (30.8% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 38.0ms | 4.5550488334996883e-10 | 2.6601895447352484 |
| 36.0ms | -83.46497177913076 | -4.234858206804041e-12 |
| 59.0ms | 320× | body | 256 | valid |
Compiled 296 to 233 computations (21.3% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
| Outputs |
|---|
(*.f64 3 (*.f64 y x)) |
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y x)) |
2 calls:
| 299.0ms | y |
| 24.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.1b | 3 | x |
| 18.1b | 11 | y |
Compiled 21 to 15 computations (28.6% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 37.0ms | 4.5550488334996883e-10 | 2.6601895447352484 |
| 36.0ms | -83.46497177913076 | -4.234858206804041e-12 |
| 56.0ms | 320× | body | 256 | valid |
Compiled 296 to 233 computations (21.3% saved)
Total -0.2b remaining (-0.6%)
Threshold costs -0.2b (-0.6%)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 3 (*.f64 y -4/29)) |
| Outputs |
|---|
(*.f64 -12/29 y) |
2 calls:
| 8.0ms | x |
| 7.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 25.6b | 1 | x |
| 25.6b | 1 | y |
Compiled 16 to 12 computations (25% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 31 | 198 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 (*.f64 3 x) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 (*.f64 3 x) y))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 x (*.f64 y 3)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 3 (*.f64 y x)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(*.f64 -12/29 y) |
| Outputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 (*.f64 3 x) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 (*.f64 3 x) y))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 x (*.f64 y 3)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 3 (*.f64 y x)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(*.f64 -12/29 y) |
Compiled 92 to 65 computations (29.3% saved)
| 1× | egg-herbie |
| 12× | rational.json-simplify-2 |
| 4× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 19 |
| 1 | 14 | 19 |
| 2 | 18 | 19 |
| 3 | 22 | 19 |
| 1× | saturated |
Compiled 18 to 14 computations (22.2% saved)
Compiled 82 to 54 computations (34.1% saved)
Loading profile data...