Time bar (total: 14.8s)
| 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)
| 1.2s | 8256× | body | 256 | valid |
| 13.0ms | 153× | 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.2b | (*.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 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 x 4/29) |
| ✓ | 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)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | -inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1.0ms | y | @ | 0 | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 0.0ms | x | @ | inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 0.0ms | x | @ | 0 | (*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
| 1× | batch-egg-rewrite |
| 2600× | rational.json-simplify-35 |
| 1430× | rational.json-simplify-1 |
| 1250× | exponential.json-3 |
| 1250× | rational.json-1 |
| 1250× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 39 |
| 1 | 58 | 39 |
| 2 | 119 | 39 |
| 3 | 252 | 39 |
| 4 | 463 | 39 |
| 5 | 1072 | 39 |
| 6 | 2418 | 39 |
| 7 | 4240 | 39 |
| 8 | 5291 | 39 |
| 9 | 6316 | 39 |
| 10 | 7270 | 39 |
| 11 | 7270 | 39 |
| 12 | 7270 | 39 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 (-.f64 x 4/29) 3) |
(-.f64 x 4/29) |
| 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) y) (*.f64 (+.f64 x -4/29) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)))))) (#(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 y 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512)))) (#(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 x (+.f64 x (+.f64 -4/29 (+.f64 x -8/29))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -4/29) (+.f64 x (+.f64 x -8/29)))))) (#(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 x (+.f64 x -8/29)) (+.f64 x -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -4/29 (+.f64 x (+.f64 x (+.f64 x -8/29))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -4/29 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -8/29) (+.f64 (+.f64 x x) -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) 3/2) (*.f64 (+.f64 x -4/29) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 x x) -4/29) (+.f64 x -8/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (+.f64 -4/29 (+.f64 x -8/29))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (+.f64 x (+.f64 x -8/29))) -4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29)) -4/29)))) (#(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) 6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) 12) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x -4/29) 3) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x -4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 x -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -4/29 x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (+.f64 -4/29 (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) 1/2) (*.f64 (+.f64 x -4/29) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -4/29 (*.f64 x 1/2)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x -4/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 x -4/29) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x -8/29)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 x -4/29) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -4/29) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -4/29) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x -8/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -4/29) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x -4/29) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -4/29) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 x -4/29) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x -8/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x -4/29) 1))))) |
| 1× | egg-herbie |
| 3002× | rational.json-simplify-53 |
| 2846× | rational.json-simplify-2 |
| 2210× | rational.json-simplify-35 |
| 1378× | exponential.json-simplify-26 |
| 1314× | rational.json-simplify-1 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 158 | 1629 |
| 1 | 349 | 1575 |
| 2 | 1077 | 1425 |
| 3 | 2639 | 1425 |
| 4 | 3804 | 1425 |
| 5 | 4437 | 1425 |
| 6 | 4573 | 1425 |
| 7 | 4659 | 1425 |
| 8 | 4740 | 1425 |
| 9 | 5973 | 1425 |
| 10 | 6661 | 1425 |
| 11 | 6741 | 1425 |
| 12 | 6820 | 1425 |
| 13 | 6899 | 1425 |
| 14 | 6899 | 1425 |
| 15 | 6978 | 1425 |
| 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) |
-4/29 |
x |
x |
(+.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) y) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y)) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2))) |
(-.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 y 6)) 2) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4) |
(/.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8) |
(/.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512) |
(pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(+.f64 x (+.f64 x (+.f64 -4/29 (+.f64 x -8/29)))) |
(+.f64 (+.f64 x -4/29) (+.f64 x (+.f64 x -8/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) 3) 0) |
(+.f64 0 (*.f64 (+.f64 x -4/29) 3)) |
(+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29)) |
(+.f64 -4/29 (+.f64 x (+.f64 x (+.f64 x -8/29)))) |
(+.f64 -4/29 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29))) |
(+.f64 (+.f64 x -8/29) (+.f64 (+.f64 x x) -4/29)) |
(+.f64 (*.f64 (+.f64 x -4/29) 3/2) (*.f64 (+.f64 x -4/29) 3/2)) |
(+.f64 (+.f64 (+.f64 x x) -4/29) (+.f64 x -8/29)) |
(+.f64 (+.f64 x (+.f64 -4/29 (+.f64 x -8/29))) x) |
(+.f64 (+.f64 x (+.f64 x (+.f64 x -8/29))) -4/29) |
(+.f64 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29)) -4/29) |
(-.f64 (*.f64 (+.f64 x -4/29) 3) 0) |
(/.f64 (*.f64 (+.f64 x -4/29) 3) 1) |
(/.f64 (*.f64 (+.f64 x -4/29) 6) 2) |
(/.f64 (*.f64 (+.f64 x -4/29) 12) 4) |
(/.f64 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))))) 512) |
(pow.f64 (*.f64 (+.f64 x -4/29) 3) 1) |
(+.f64 x -4/29) |
(+.f64 (+.f64 x -4/29) 0) |
(+.f64 0 (+.f64 x -4/29)) |
(+.f64 -4/29 x) |
(+.f64 (*.f64 x 1/2) (+.f64 -4/29 (*.f64 x 1/2))) |
(+.f64 (*.f64 (+.f64 x -4/29) 1/2) (*.f64 (+.f64 x -4/29) 1/2)) |
(+.f64 (+.f64 -4/29 (*.f64 x 1/2)) (*.f64 x 1/2)) |
(*.f64 (+.f64 x -4/29) 1) |
(*.f64 1 (+.f64 x -4/29)) |
(*.f64 2 (*.f64 (+.f64 x -4/29) 1/2)) |
(*.f64 (+.f64 x (+.f64 x -8/29)) 1/2) |
(*.f64 4 (*.f64 (+.f64 x -4/29) 1/4)) |
(*.f64 (*.f64 (+.f64 x -4/29) 4) 1/4) |
(*.f64 (*.f64 (+.f64 x -4/29) 8) 1/8) |
(*.f64 1/2 (+.f64 x (+.f64 x -8/29))) |
(*.f64 (*.f64 (+.f64 x -4/29) 1/2) 2) |
(*.f64 1/4 (*.f64 (+.f64 x -4/29) 4)) |
(*.f64 (*.f64 (+.f64 x -4/29) 1/4) 4) |
(*.f64 1/8 (*.f64 (+.f64 x -4/29) 8)) |
(/.f64 (+.f64 x -4/29) 1) |
(/.f64 (+.f64 x (+.f64 x -8/29)) 2) |
(/.f64 (*.f64 (+.f64 x -4/29) 4) 4) |
(/.f64 (*.f64 (+.f64 x -4/29) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))))) 512) |
(pow.f64 (+.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 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 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
-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) |
-4/29 |
x |
x |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 0 (*.f64 (+.f64 x -4/29) (*.f64 3 y))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 (*.f64 (+.f64 x -4/29) y) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y)) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2))) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(-.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 6)) 2) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1) |
(*.f64 y (*.f64 (-.f64 x 4/29) 3)) |
(*.f64 y (*.f64 3 (-.f64 x 4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 x (+.f64 x (+.f64 -4/29 (+.f64 x -8/29)))) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 x -4/29) (+.f64 x (+.f64 x -8/29))) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (*.f64 (+.f64 x -4/29) 3) 0) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 0 (*.f64 (+.f64 x -4/29) 3)) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29)) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 -4/29 (+.f64 x (+.f64 x (+.f64 x -8/29)))) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 -4/29 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29))) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 x -8/29) (+.f64 (+.f64 x x) -4/29)) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (*.f64 (+.f64 x -4/29) 3/2) (*.f64 (+.f64 x -4/29) 3/2)) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 (+.f64 x x) -4/29) (+.f64 x -8/29)) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 x (+.f64 -4/29 (+.f64 x -8/29))) x) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 x (+.f64 x (+.f64 x -8/29))) -4/29) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 (+.f64 (+.f64 x -4/29) (+.f64 (+.f64 x x) -4/29)) -4/29) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(-.f64 (*.f64 (+.f64 x -4/29) 3) 0) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 (+.f64 x -4/29) 3) 1) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 (+.f64 x -4/29) 6) 2) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 (+.f64 x -4/29) 12) 4) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8) 8) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)) 16) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))) 32) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))) 64) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))) 128) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) 256) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 3) 8))))))) 512) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(pow.f64 (*.f64 (+.f64 x -4/29) 3) 1) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(*.f64 3 (+.f64 x -4/29)) |
(+.f64 x -4/29) |
(+.f64 (+.f64 x -4/29) 0) |
(+.f64 x -4/29) |
(+.f64 0 (+.f64 x -4/29)) |
(+.f64 x -4/29) |
(+.f64 -4/29 x) |
(+.f64 x -4/29) |
(+.f64 (*.f64 x 1/2) (+.f64 -4/29 (*.f64 x 1/2))) |
(+.f64 x -4/29) |
(+.f64 (*.f64 (+.f64 x -4/29) 1/2) (*.f64 (+.f64 x -4/29) 1/2)) |
(+.f64 x -4/29) |
(+.f64 (+.f64 -4/29 (*.f64 x 1/2)) (*.f64 x 1/2)) |
(+.f64 x -4/29) |
(*.f64 (+.f64 x -4/29) 1) |
(+.f64 x -4/29) |
(*.f64 1 (+.f64 x -4/29)) |
(+.f64 x -4/29) |
(*.f64 2 (*.f64 (+.f64 x -4/29) 1/2)) |
(+.f64 x -4/29) |
(*.f64 (+.f64 x (+.f64 x -8/29)) 1/2) |
(+.f64 x -4/29) |
(*.f64 4 (*.f64 (+.f64 x -4/29) 1/4)) |
(+.f64 x -4/29) |
(*.f64 (*.f64 (+.f64 x -4/29) 4) 1/4) |
(+.f64 x -4/29) |
(*.f64 (*.f64 (+.f64 x -4/29) 8) 1/8) |
(+.f64 x -4/29) |
(*.f64 1/2 (+.f64 x (+.f64 x -8/29))) |
(+.f64 x -4/29) |
(*.f64 (*.f64 (+.f64 x -4/29) 1/2) 2) |
(+.f64 x -4/29) |
(*.f64 1/4 (*.f64 (+.f64 x -4/29) 4)) |
(+.f64 x -4/29) |
(*.f64 (*.f64 (+.f64 x -4/29) 1/4) 4) |
(+.f64 x -4/29) |
(*.f64 1/8 (*.f64 (+.f64 x -4/29) 8)) |
(+.f64 x -4/29) |
(/.f64 (+.f64 x -4/29) 1) |
(+.f64 x -4/29) |
(/.f64 (+.f64 x (+.f64 x -8/29)) 2) |
(+.f64 x -4/29) |
(/.f64 (*.f64 (+.f64 x -4/29) 4) 4) |
(+.f64 x -4/29) |
(/.f64 (*.f64 (+.f64 x -4/29) 8) 8) |
(+.f64 x -4/29) |
(/.f64 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)) 16) |
(+.f64 x -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))) 32) |
(+.f64 x -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))) 64) |
(+.f64 x -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))) 128) |
(+.f64 x -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) 256) |
(+.f64 x -4/29) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -4/29) 8))))))) 512) |
(+.f64 x -4/29) |
(pow.f64 (+.f64 x -4/29) 1) |
(+.f64 x -4/29) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (-.f64 x 4/29) | |
| ✓ | 0.2b | (*.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 | x | @ | -inf | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| 0.0ms | y | @ | 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 |
| 2594× | rational.json-simplify-35 |
| 1422× | rational.json-simplify-1 |
| 1256× | exponential.json-3 |
| 1256× | rational.json-1 |
| 1256× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 19 |
| 1 | 60 | 19 |
| 2 | 130 | 19 |
| 3 | 268 | 19 |
| 4 | 488 | 19 |
| 5 | 1116 | 19 |
| 6 | 2512 | 19 |
| 7 | 4360 | 19 |
| 8 | 5403 | 19 |
| 9 | 6405 | 19 |
| 10 | 7341 | 19 |
| 11 | 7341 | 19 |
| 12 | 7341 | 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) y) (*.f64 (+.f64 x -4/29) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)))))) (#(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 y 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 1))))) |
| 1× | egg-herbie |
| 3698× | rational.json-simplify-35 |
| 2504× | rational.json-simplify-2 |
| 1216× | rational.json-simplify-53 |
| 1068× | rational.json-simplify-1 |
| 992× | exponential.json-simplify-26 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 66 | 809 |
| 1 | 159 | 755 |
| 2 | 303 | 755 |
| 3 | 728 | 755 |
| 4 | 2056 | 755 |
| 5 | 3645 | 755 |
| 6 | 4530 | 755 |
| 7 | 4884 | 755 |
| 8 | 5102 | 755 |
| 9 | 5277 | 755 |
| 10 | 5446 | 755 |
| 11 | 5727 | 755 |
| 12 | 5983 | 755 |
| 13 | 6043 | 755 |
| 14 | 6130 | 755 |
| 15 | 6223 | 755 |
| 16 | 6393 | 755 |
| 17 | 6560 | 755 |
| 18 | 6727 | 755 |
| 19 | 6894 | 755 |
| 20 | 7234 | 755 |
| 21 | 7738 | 755 |
| 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) y) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y)) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2))) |
(-.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 y 6)) 2) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4) |
(/.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8) |
(/.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512) |
(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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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))) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 3 y)) 0) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 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 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) y) (*.f64 (+.f64 x -4/29) (+.f64 y y))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) (+.f64 y y)) (*.f64 (+.f64 x -4/29) y)) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(+.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 3/2)) (*.f64 (+.f64 x -4/29) (*.f64 y 3/2))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 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 (+.f64 x -4/29) 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 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 6)) 2) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 (+.f64 x -4/29) (*.f64 y 12)) 4) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 24 (*.f64 (+.f64 x -4/29) y)) 8) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))) 16) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))) 32) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))) 64) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))) 128) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) 256) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 24 (*.f64 (+.f64 x -4/29) y)))))))) 512) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(*.f64 y (*.f64 (+.f64 x -4/29) 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 (+.f64 x -4/29) 3)) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
Compiled 1731 to 1359 computations (21.5% saved)
9 alts after pruning (8 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 143 | 8 | 151 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 0 | 1 |
| Total | 144 | 9 | 153 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.2b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ▶ | 0.2b | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| ▶ | 34.7b | (*.f64 (*.f64 x 3) y) |
| 34.7b | (*.f64 x (*.f64 3 y)) | |
| 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) | |
| ▶ | 34.8b | (*.f64 3 (*.f64 y x)) |
| 28.3b | (*.f64 -4/29 (*.f64 3 y)) | |
| ▶ | 28.2b | (*.f64 -12/29 y) |
Compiled 133 to 99 computations (25.6% 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 | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 0.0ms | y | @ | 0 | (*.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) |
| 0.0ms | y | @ | inf | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| 1× | batch-egg-rewrite |
| 2450× | rational.json-simplify-35 |
| 1462× | rational.json-simplify-1 |
| 1238× | exponential.json-3 |
| 1238× | rational.json-1 |
| 1238× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 58 | 32 |
| 2 | 115 | 32 |
| 3 | 230 | 32 |
| 4 | 413 | 32 |
| 5 | 907 | 32 |
| 6 | 2205 | 32 |
| 7 | 3859 | 32 |
| 8 | 4967 | 32 |
| 9 | 6358 | 32 |
| 10 | 7097 | 32 |
| 11 | 7097 | 32 |
| 12 | 7097 | 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) (*.f64 y 1/2)) (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 1/2)))))) (#(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) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))))) 512)))) (#(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 x (+.f64 (+.f64 x x) -12/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 x) -12/29)))) (#(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 x x) (+.f64 x -12/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -12/29 (*.f64 3 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 3/2) (+.f64 -12/29 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -12/29) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 x x) -12/29) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -12/29 (*.f64 x 3/2)) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 3 x) -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 3 x) -12/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 3 x) -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 3 x) -12/29) 1))))) |
| 1× | egg-herbie |
| 3502× | rational.json-simplify-53 |
| 2438× | rational.json-simplify-2 |
| 2182× | rational.json-simplify-35 |
| 1300× | rational.json-simplify-51 |
| 914× | rational.json-simplify-1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 109 | 1114 |
| 1 | 238 | 970 |
| 2 | 725 | 970 |
| 3 | 1806 | 970 |
| 4 | 4468 | 970 |
| 5 | 4953 | 970 |
| 6 | 5086 | 970 |
| 7 | 5181 | 970 |
| 8 | 5275 | 970 |
| 9 | 5369 | 970 |
| 10 | 6549 | 970 |
| 11 | 6643 | 970 |
| 12 | 6737 | 970 |
| 13 | 6831 | 970 |
| 14 | 6831 | 970 |
| 15 | 6831 | 970 |
| 16 | 6925 | 970 |
| 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) (*.f64 y 1/2)) (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 1/2))) |
(-.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) (+.f64 y y)) 2) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 4)) 4) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))))) 512) |
(pow.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) y) 1) |
(+.f64 x (+.f64 (+.f64 x x) -12/29)) |
(+.f64 (*.f64 3 x) -12/29) |
(+.f64 (+.f64 (*.f64 3 x) -12/29) 0) |
(+.f64 0 (+.f64 (*.f64 3 x) -12/29)) |
(+.f64 (+.f64 x x) (+.f64 x -12/29)) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2)) |
(+.f64 (*.f64 x 3/2) (+.f64 -12/29 (*.f64 x 3/2))) |
(+.f64 (+.f64 x -12/29) (+.f64 x x)) |
(+.f64 (+.f64 (+.f64 x x) -12/29) x) |
(+.f64 (+.f64 -12/29 (*.f64 x 3/2)) (*.f64 x 3/2)) |
(*.f64 (+.f64 (*.f64 3 x) -12/29) 1) |
(*.f64 1 (+.f64 (*.f64 3 x) -12/29)) |
(*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2)) |
(*.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 1/2) |
(*.f64 4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 1/4) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 1/8) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29))) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) 2) |
(*.f64 1/4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4) 4) |
(*.f64 1/8 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)) |
(/.f64 (+.f64 (*.f64 3 x) -12/29) 1) |
(/.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 2) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 4) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))))) 512) |
(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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 3 (*.f64 y 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 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 0 (*.f64 (+.f64 (*.f64 3 x) -12/29) y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 1/2)) (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 1/2))) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(-.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) y) 0) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) y) 1) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (+.f64 y y)) 2) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 4)) 4) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)) 8) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))) 16) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))) 32) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))) 64) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))) 128) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) 256) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) (*.f64 y 8)))))))) 512) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(pow.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) y) 1) |
(+.f64 (*.f64 -12/29 y) (*.f64 3 (*.f64 y x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 x (+.f64 (+.f64 x x) -12/29)) |
(+.f64 (+.f64 x x) (+.f64 -12/29 x)) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(+.f64 x (+.f64 x (+.f64 -12/29 x))) |
(+.f64 (*.f64 3 x) -12/29) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (+.f64 (*.f64 3 x) -12/29) 0) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 0 (+.f64 (*.f64 3 x) -12/29)) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (+.f64 x x) (+.f64 x -12/29)) |
(+.f64 (+.f64 x x) (+.f64 -12/29 x)) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(+.f64 x (+.f64 x (+.f64 -12/29 x))) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2)) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (*.f64 x 3/2) (+.f64 -12/29 (*.f64 x 3/2))) |
(+.f64 -12/29 (*.f64 3 x)) |
(+.f64 (+.f64 x -12/29) (+.f64 x x)) |
(+.f64 (+.f64 x x) (+.f64 -12/29 x)) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(+.f64 x (+.f64 x (+.f64 -12/29 x))) |
(+.f64 (+.f64 (+.f64 x x) -12/29) x) |
(+.f64 (+.f64 x x) (+.f64 -12/29 x)) |
(+.f64 x (+.f64 -12/29 (+.f64 x x))) |
(+.f64 x (+.f64 x (+.f64 -12/29 x))) |
(+.f64 (+.f64 -12/29 (*.f64 x 3/2)) (*.f64 x 3/2)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (+.f64 (*.f64 3 x) -12/29) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1 (+.f64 (*.f64 3 x) -12/29)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 1/2) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 1/4) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 1/8) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29))) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/2) 2) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1/4 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 1/4) 4) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1/8 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 (*.f64 3 x) -12/29) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 -12/29 (+.f64 (*.f64 x 6) -12/29)) 2) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 4) 4) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8) 8) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)) 16) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))) 32) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))) 64) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))) 128) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) 256) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 3 x) -12/29) 8))))))) 512) |
(+.f64 -12/29 (*.f64 3 x)) |
(pow.f64 (+.f64 (*.f64 3 x) -12/29) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
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 | @ | inf | (*.f64 -12/29 y) |
| 0.0ms | y | @ | -inf | (*.f64 -12/29 y) |
| 0.0ms | y | @ | 0 | (*.f64 -12/29 y) |
| 1× | batch-egg-rewrite |
| 2416× | rational.json-simplify-2 |
| 2364× | rational.json-simplify-35 |
| 1474× | rational.json-simplify-1 |
| 1110× | exponential.json-3 |
| 1110× | rational.json-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 33 | 7 |
| 2 | 78 | 7 |
| 3 | 158 | 7 |
| 4 | 278 | 7 |
| 5 | 583 | 7 |
| 6 | 1338 | 7 |
| 7 | 2831 | 7 |
| 8 | 4397 | 7 |
| 9 | 4963 | 7 |
| 10 | 6030 | 7 |
| 11 | 6737 | 7 |
| 12 | 6737 | 7 |
| 13 | 7802 | 7 |
| 14 | 7802 | 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 y -6/29) (*.f64 y -6/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -12/29 y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -12/29 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -24/29) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -48/29) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -96/29) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y -96/29)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -12/29 y) 1))))) |
| 1× | egg-herbie |
| 3476× | rational.json-simplify-51 |
| 2910× | rational.json-simplify-2 |
| 2064× | rational.json-simplify-35 |
| 1168× | rational.json-simplify-1 |
| 686× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 48 | 112 |
| 1 | 122 | 112 |
| 2 | 214 | 112 |
| 3 | 537 | 112 |
| 4 | 1350 | 112 |
| 5 | 2639 | 112 |
| 6 | 3509 | 112 |
| 7 | 3681 | 112 |
| 8 | 3774 | 112 |
| 9 | 3845 | 112 |
| 10 | 3910 | 112 |
| 11 | 3974 | 112 |
| 12 | 4035 | 112 |
| 13 | 4095 | 112 |
| 14 | 4154 | 112 |
| 15 | 4213 | 112 |
| 16 | 4272 | 112 |
| 17 | 4331 | 112 |
| 18 | 4390 | 112 |
| 19 | 4449 | 112 |
| 20 | 7041 | 112 |
| 21 | 7181 | 112 |
| 22 | 7239 | 112 |
| 23 | 7244 | 112 |
| 24 | 7244 | 112 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 -12/29 y) 0) |
(+.f64 0 (*.f64 -12/29 y)) |
(+.f64 (*.f64 y -6/29) (*.f64 y -6/29)) |
(-.f64 (*.f64 -12/29 y) 0) |
(/.f64 (*.f64 -12/29 y) 1) |
(/.f64 (*.f64 y -24/29) 2) |
(/.f64 (*.f64 y -48/29) 4) |
(/.f64 (*.f64 y -96/29) 8) |
(/.f64 (*.f64 2 (*.f64 y -96/29)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024) |
(pow.f64 (*.f64 -12/29 y) 1) |
| Outputs |
|---|
(+.f64 (*.f64 -12/29 y) 0) |
(*.f64 -12/29 y) |
(+.f64 0 (*.f64 -12/29 y)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -6/29) (*.f64 y -6/29)) |
(*.f64 -12/29 y) |
(-.f64 (*.f64 -12/29 y) 0) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 -12/29 y) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -24/29) 2) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -48/29) 4) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -96/29) 8) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 y -96/29)) 16) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512) |
(*.f64 -12/29 y) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024) |
(*.f64 -12/29 y) |
(pow.f64 (*.f64 -12/29 y) 1) |
(*.f64 -12/29 y) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (*.f64 3 (*.f64 y x)) |
Compiled 13 to 6 computations (53.8% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | inf | (*.f64 3 (*.f64 y x)) |
| 1.0ms | y | @ | 0 | (*.f64 3 (*.f64 y x)) |
| 0.0ms | x | @ | inf | (*.f64 3 (*.f64 y x)) |
| 0.0ms | x | @ | 0 | (*.f64 3 (*.f64 y x)) |
| 0.0ms | y | @ | -inf | (*.f64 3 (*.f64 y x)) |
| 1× | batch-egg-rewrite |
| 2502× | rational.json-simplify-2 |
| 2146× | rational.json-simplify-35 |
| 1280× | rational.json-1 |
| 1280× | rational.json-2 |
| 1280× | rational.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 114 | 13 |
| 3 | 239 | 13 |
| 4 | 433 | 13 |
| 5 | 984 | 13 |
| 6 | 2146 | 13 |
| 7 | 3651 | 13 |
| 8 | 4492 | 13 |
| 9 | 5367 | 13 |
| 10 | 6134 | 13 |
| 11 | 6134 | 13 |
| 12 | 6937 | 13 |
| 13 | 6937 | 13 |
| 14 | 7699 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 3 (*.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2))))) (#(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 (*.f64 y x) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 x 3/2)) (*.f64 y (*.f64 x 3/2)))))) (#(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 y (*.f64 x 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 x 6)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 y x)) 1))))) |
| 1× | egg-herbie |
| 4584× | rational.json-simplify-35 |
| 2304× | rational.json-simplify-2 |
| 1068× | exponential.json-simplify-26 |
| 918× | rational.json-simplify-1 |
| 688× | rational.json-simplify-53 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 52 | 425 |
| 1 | 131 | 425 |
| 2 | 267 | 323 |
| 3 | 638 | 323 |
| 4 | 1847 | 221 |
| 5 | 3601 | 221 |
| 6 | 4411 | 221 |
| 7 | 4851 | 221 |
| 8 | 5149 | 221 |
| 9 | 5370 | 221 |
| 10 | 5558 | 221 |
| 11 | 6459 | 221 |
| 12 | 6461 | 221 |
| 13 | 6478 | 221 |
| 14 | 6500 | 221 |
| 15 | 6512 | 221 |
| 16 | 6691 | 221 |
| 17 | 6867 | 221 |
| 18 | 7043 | 221 |
| 19 | 7219 | 221 |
| 20 | 7395 | 221 |
| 21 | 7571 | 221 |
| 22 | 7774 | 221 |
| 23 | 7778 | 221 |
| 24 | 7778 | 221 |
| 25 | 7954 | 221 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 3 (*.f64 y x)) 0) |
(+.f64 0 (*.f64 3 (*.f64 y x))) |
(+.f64 (*.f64 (*.f64 y x) 2) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 x 3/2)) (*.f64 y (*.f64 x 3/2))) |
(-.f64 (*.f64 3 (*.f64 y x)) 0) |
(/.f64 (*.f64 3 (*.f64 y x)) 1) |
(/.f64 (*.f64 y (*.f64 x 6)) 2) |
(/.f64 (*.f64 y (*.f64 x 12)) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 x 6)) 4) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))))) 512) |
(pow.f64 (*.f64 3 (*.f64 y x)) 1) |
| Outputs |
|---|
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(+.f64 (*.f64 3 (*.f64 y x)) 0) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(+.f64 0 (*.f64 3 (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(+.f64 (*.f64 (*.f64 y x) 2) (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(+.f64 (*.f64 y (*.f64 x 3/2)) (*.f64 y (*.f64 x 3/2))) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(-.f64 (*.f64 3 (*.f64 y x)) 0) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 3 (*.f64 y x)) 1) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 y (*.f64 x 6)) 2) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 y (*.f64 x 12)) 4) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 (*.f64 y (*.f64 x 6)) 4) 8) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)) 16) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))) 32) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))) 64) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))) 128) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) 256) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x 6)) 4))))))) 512) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
(pow.f64 (*.f64 3 (*.f64 y x)) 1) |
(+.f64 (*.f64 y x) (*.f64 (*.f64 y x) 2)) |
(+.f64 (*.f64 y x) (*.f64 y (*.f64 x 2))) |
(*.f64 y (+.f64 x (*.f64 x 2))) |
(*.f64 x (+.f64 y (+.f64 y y))) |
(*.f64 y (*.f64 x 3)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (*.f64 x 3) y) |
Compiled 13 to 8 computations (38.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (*.f64 (*.f64 x 3) y) |
| 0.0ms | x | @ | inf | (*.f64 (*.f64 x 3) y) |
| 0.0ms | x | @ | -inf | (*.f64 (*.f64 x 3) y) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 x 3) y) |
| 0.0ms | y | @ | -inf | (*.f64 (*.f64 x 3) y) |
| 1× | batch-egg-rewrite |
| 2630× | rational.json-simplify-2 |
| 2170× | rational.json-simplify-35 |
| 1300× | rational.json-1 |
| 1140× | rational.json-simplify-1 |
| 1038× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 46 | 13 |
| 2 | 103 | 13 |
| 3 | 223 | 13 |
| 4 | 409 | 13 |
| 5 | 950 | 13 |
| 6 | 2100 | 13 |
| 7 | 3650 | 13 |
| 8 | 4560 | 13 |
| 9 | 5466 | 13 |
| 10 | 6270 | 13 |
| 11 | 6270 | 13 |
| 12 | 7134 | 13 |
| 13 | 7134 | 13 |
| 14 | 7912 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 x 3) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 3 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x x)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 3/2) (*.f64 (*.f64 x y) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x y) 24) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 3 y)) 1))))) |
| 1× | egg-herbie |
| 4578× | rational.json-simplify-35 |
| 2450× | rational.json-simplify-2 |
| 1174× | rational.json-simplify-1 |
| 816× | exponential.json-simplify-26 |
| 786× | rational.json-simplify-53 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 56 | 533 |
| 1 | 138 | 533 |
| 2 | 276 | 533 |
| 3 | 705 | 533 |
| 4 | 1941 | 533 |
| 5 | 3586 | 533 |
| 6 | 4339 | 533 |
| 7 | 4630 | 533 |
| 8 | 4834 | 533 |
| 9 | 5018 | 533 |
| 10 | 5195 | 533 |
| 11 | 5674 | 533 |
| 12 | 5775 | 533 |
| 13 | 5833 | 533 |
| 14 | 5915 | 533 |
| 15 | 6058 | 533 |
| 16 | 6360 | 533 |
| 17 | 6650 | 533 |
| 18 | 6913 | 533 |
| 19 | 7094 | 533 |
| 20 | 7262 | 533 |
| 21 | 7430 | 533 |
| 22 | 7597 | 533 |
| 23 | 7767 | 533 |
| 24 | 7781 | 533 |
| 25 | 7793 | 533 |
| 26 | 7793 | 533 |
| 27 | 7957 | 533 |
| 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 3 y)) 0) |
(+.f64 0 (*.f64 x (*.f64 3 y))) |
(+.f64 (*.f64 x y) (*.f64 y (+.f64 x x))) |
(+.f64 (*.f64 y (+.f64 x x)) (*.f64 x y)) |
(+.f64 (*.f64 (*.f64 x y) 3/2) (*.f64 (*.f64 x y) 3/2)) |
(-.f64 (*.f64 x (*.f64 3 y)) 0) |
(/.f64 (*.f64 x (*.f64 3 y)) 1) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(/.f64 (*.f64 x (*.f64 y 12)) 4) |
(/.f64 (*.f64 (*.f64 x y) 24) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512) |
(pow.f64 (*.f64 x (*.f64 3 y)) 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 3 y)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 0 (*.f64 x (*.f64 3 y))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 x y) (*.f64 y (+.f64 x x))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 y (+.f64 x x)) (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 (*.f64 x y) 3/2) (*.f64 (*.f64 x y) 3/2)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(-.f64 (*.f64 x (*.f64 3 y)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 3 y)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 y 12)) 4) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 (*.f64 x y) 24) 8) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(pow.f64 (*.f64 x (*.f64 3 y)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 x (+.f64 x (+.f64 x -12/29))) |
| ✓ | 0.0b | (+.f64 x -12/29) |
| ✓ | 0.0b | (+.f64 x (+.f64 x -12/29)) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
Compiled 29 to 17 computations (41.4% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (+.f64 x -12/29) |
| 1.0ms | y | @ | 0 | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| 0.0ms | x | @ | 0 | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| 0.0ms | x | @ | inf | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| 0.0ms | y | @ | inf | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| 1× | batch-egg-rewrite |
| 2444× | rational.json-simplify-35 |
| 1670× | rational.json-simplify-1 |
| 1418× | rational.json-1 |
| 1418× | rational.json-2 |
| 1418× | rational.json-3 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 64 |
| 1 | 60 | 64 |
| 2 | 123 | 64 |
| 3 | 259 | 52 |
| 4 | 545 | 52 |
| 5 | 1368 | 52 |
| 6 | 3165 | 52 |
| 7 | 4812 | 52 |
| 8 | 6329 | 52 |
| 9 | 7433 | 52 |
| 10 | 7455 | 52 |
| 11 | 7455 | 52 |
| 12 | 7861 | 52 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
(+.f64 x (+.f64 x -12/29)) |
(+.f64 x -12/29) |
(+.f64 x (+.f64 x (+.f64 x -12/29))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2)) (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -12/29 (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -12/29 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -12/29 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -12/29 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -12/29 (+.f64 x x)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x -12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x -12/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 x -12/29) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x -24/29)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 x -12/29) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -12/29) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -12/29) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x -24/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -12/29) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x -12/29) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x -12/29) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x -24/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x -12/29) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -12/29 (*.f64 x 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -12/29 (*.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -12/29 (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x (+.f64 x -24/29)) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -12/29 (*.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -12/29 (*.f64 x 3)) 1))))) |
| 1× | egg-herbie |
| 3390× | rational.json-simplify-35 |
| 2390× | rational.json-simplify-2 |
| 1702× | rational.json-simplify-53 |
| 1466× | rational.json-simplify-1 |
| 1004× | rational.json-simplify-41 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 170 | 2091 |
| 1 | 361 | 1917 |
| 2 | 986 | 1917 |
| 3 | 2247 | 1917 |
| 4 | 3911 | 1917 |
| 5 | 4707 | 1917 |
| 6 | 4857 | 1917 |
| 7 | 4949 | 1917 |
| 8 | 5039 | 1917 |
| 9 | 5123 | 1917 |
| 10 | 6176 | 1917 |
| 11 | 6507 | 1917 |
| 12 | 6829 | 1917 |
| 13 | 6978 | 1917 |
| 14 | 7012 | 1917 |
| 15 | 7029 | 1917 |
| 16 | 7031 | 1917 |
| 17 | 7031 | 1917 |
| 18 | 7031 | 1917 |
| 19 | 7114 | 1917 |
| 20 | 7197 | 1917 |
| 21 | 7280 | 1917 |
| 22 | 7486 | 1917 |
| 23 | 7579 | 1917 |
| 24 | 7672 | 1917 |
| 25 | 7755 | 1917 |
| 26 | 7838 | 1917 |
| 27 | 7921 | 1917 |
| 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 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
-12/29 |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(*.f64 2 x) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(*.f64 2 x) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
-12/29 |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
x |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
x |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/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 -12/29 (*.f64 x 3)) y) 0) |
(+.f64 0 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y)) |
(+.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2)) (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2))) |
(-.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 0) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (+.f64 y y)) 2) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 4)) 4) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))))) 256) |
(pow.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1) |
(-.f64 (+.f64 -12/29 (+.f64 x x)) 0) |
(*.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(*.f64 1 (+.f64 -12/29 (+.f64 x x))) |
(*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2)) |
(*.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 1/2) |
(*.f64 4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 1/4) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 1/8) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4)))) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2) 2) |
(*.f64 1/4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4) 4) |
(/.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(/.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 2) |
(/.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 4) |
(/.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))))) 256) |
(pow.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(-.f64 (+.f64 x -12/29) 0) |
(*.f64 (+.f64 x -12/29) 1) |
(*.f64 1 (+.f64 x -12/29)) |
(*.f64 2 (*.f64 (+.f64 x -12/29) 1/2)) |
(*.f64 (+.f64 x (+.f64 x -24/29)) 1/2) |
(*.f64 4 (*.f64 (+.f64 x -12/29) 1/4)) |
(*.f64 (*.f64 (+.f64 x -12/29) 4) 1/4) |
(*.f64 (*.f64 (+.f64 x -12/29) 8) 1/8) |
(*.f64 1/2 (+.f64 x (+.f64 x -24/29))) |
(*.f64 (*.f64 (+.f64 x -12/29) 1/2) 2) |
(*.f64 1/4 (*.f64 (+.f64 x -12/29) 4)) |
(*.f64 (*.f64 (+.f64 x -12/29) 1/4) 4) |
(/.f64 (+.f64 x -12/29) 1) |
(/.f64 (+.f64 x (+.f64 x -24/29)) 2) |
(/.f64 (*.f64 (+.f64 x -12/29) 4) 4) |
(/.f64 (*.f64 (+.f64 x -12/29) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))))) 256) |
(pow.f64 (+.f64 x -12/29) 1) |
(-.f64 (+.f64 -12/29 (*.f64 x 3)) 0) |
(*.f64 (+.f64 -12/29 (*.f64 x 3)) 1) |
(*.f64 1 (+.f64 -12/29 (*.f64 x 3))) |
(*.f64 2 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2))) |
(*.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 1/2) |
(*.f64 4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4)) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 1/4) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 1/8) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6)))) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -24/29)) (*.f64 x 4))) |
(*.f64 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2)) 2) |
(*.f64 1/4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4)) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4) 4) |
(/.f64 (+.f64 -12/29 (*.f64 x 3)) 1) |
(/.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 2) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 4) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))))) 256) |
(pow.f64 (+.f64 -12/29 (*.f64 x 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 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
(*.f64 y (-.f64 (+.f64 (*.f64 2 x) x) 12/29)) |
(*.f64 y (-.f64 (+.f64 x (*.f64 x 2)) 12/29)) |
(*.f64 y (+.f64 x (-.f64 (*.f64 x 2) 12/29))) |
-12/29 |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(*.f64 2 x) |
(*.f64 x 2) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(*.f64 2 x) |
(*.f64 x 2) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
(-.f64 (*.f64 2 x) 12/29) |
(-.f64 (*.f64 x 2) 12/29) |
-12/29 |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
x |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
x |
(-.f64 x 12/29) |
(-.f64 x 12/29) |
(-.f64 x 12/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 -12/29 (*.f64 x 3)) y) 0) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 0 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y)) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(+.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2)) (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 1/2))) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(-.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 0) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (+.f64 y y)) 2) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 4)) 4) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)) 8) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))) 16) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))) 32) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))) 64) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) 128) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) (*.f64 y 8))))))) 256) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(pow.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) y) 1) |
(+.f64 (*.f64 -12/29 y) (*.f64 y (*.f64 3 x))) |
(*.f64 y (+.f64 -12/29 (*.f64 3 x))) |
(-.f64 (+.f64 -12/29 (+.f64 x x)) 0) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 1 (+.f64 -12/29 (+.f64 x x))) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2)) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 1/2) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4)))) |
(*.f64 1/2 (+.f64 (*.f64 x 4) -24/29)) |
(*.f64 4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4)) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 1/4) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 1/8) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4)))) |
(*.f64 1/2 (+.f64 (*.f64 x 4) -24/29)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/2) 2) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 1/4 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4)) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 1/4) 4) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 4))) 2) |
(/.f64 (+.f64 (*.f64 x 4) -24/29) 2) |
(/.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 4) 4) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8) 8) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)) 16) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))) 32) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))) 64) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) 128) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (+.f64 x x)) 8)))))) 256) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(pow.f64 (+.f64 -12/29 (+.f64 x x)) 1) |
(+.f64 -12/29 (+.f64 x x)) |
(+.f64 x (+.f64 -12/29 x)) |
(-.f64 (+.f64 x -12/29) 0) |
(+.f64 -12/29 x) |
(*.f64 (+.f64 x -12/29) 1) |
(+.f64 -12/29 x) |
(*.f64 1 (+.f64 x -12/29)) |
(+.f64 -12/29 x) |
(*.f64 2 (*.f64 (+.f64 x -12/29) 1/2)) |
(+.f64 -12/29 x) |
(*.f64 (+.f64 x (+.f64 x -24/29)) 1/2) |
(+.f64 -12/29 x) |
(*.f64 4 (*.f64 (+.f64 x -12/29) 1/4)) |
(+.f64 -12/29 x) |
(*.f64 (*.f64 (+.f64 x -12/29) 4) 1/4) |
(+.f64 -12/29 x) |
(*.f64 (*.f64 (+.f64 x -12/29) 8) 1/8) |
(+.f64 -12/29 x) |
(*.f64 1/2 (+.f64 x (+.f64 x -24/29))) |
(+.f64 -12/29 x) |
(*.f64 (*.f64 (+.f64 x -12/29) 1/2) 2) |
(+.f64 -12/29 x) |
(*.f64 1/4 (*.f64 (+.f64 x -12/29) 4)) |
(+.f64 -12/29 x) |
(*.f64 (*.f64 (+.f64 x -12/29) 1/4) 4) |
(+.f64 -12/29 x) |
(/.f64 (+.f64 x -12/29) 1) |
(+.f64 -12/29 x) |
(/.f64 (+.f64 x (+.f64 x -24/29)) 2) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 (+.f64 x -12/29) 4) 4) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 (+.f64 x -12/29) 8) 8) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)) 16) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))) 32) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))) 64) |
(+.f64 -12/29 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) 128) |
(+.f64 -12/29 x) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x -12/29) 8)))))) 256) |
(+.f64 -12/29 x) |
(pow.f64 (+.f64 x -12/29) 1) |
(+.f64 -12/29 x) |
(-.f64 (+.f64 -12/29 (*.f64 x 3)) 0) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (+.f64 -12/29 (*.f64 x 3)) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1 (+.f64 -12/29 (*.f64 x 3))) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 2 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2))) |
(*.f64 2 (+.f64 x (*.f64 1/2 (+.f64 -12/29 x)))) |
(*.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 1/2) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6)))) |
(*.f64 1/2 (+.f64 (*.f64 x 6) -24/29)) |
(*.f64 1/2 (+.f64 -24/29 (*.f64 x 6))) |
(*.f64 4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 1/4) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 1/8) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 1/2 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6)))) |
(*.f64 1/2 (+.f64 (*.f64 x 6) -24/29)) |
(*.f64 1/2 (+.f64 -24/29 (*.f64 x 6))) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -24/29)) (*.f64 x 4))) |
(*.f64 1/2 (+.f64 (*.f64 x 4) (+.f64 x (+.f64 x -24/29)))) |
(*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) |
(*.f64 1/2 (+.f64 -24/29 (+.f64 (+.f64 x x) (*.f64 x 4)))) |
(*.f64 1/2 (+.f64 (+.f64 x x) (+.f64 (*.f64 x 4) -24/29))) |
(*.f64 1/2 (+.f64 x (+.f64 (*.f64 x 4) (+.f64 x -24/29)))) |
(*.f64 (+.f64 x (*.f64 (+.f64 x -12/29) 1/2)) 2) |
(*.f64 2 (+.f64 x (*.f64 1/2 (+.f64 -12/29 x)))) |
(*.f64 1/4 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4)) |
(+.f64 -12/29 (*.f64 3 x)) |
(*.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 1/4) 4) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 -12/29 (*.f64 x 3)) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 -12/29 (+.f64 -12/29 (*.f64 x 6))) 2) |
(/.f64 (+.f64 (*.f64 x 6) -24/29) 2) |
(/.f64 (+.f64 -24/29 (*.f64 x 6)) 2) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 4) 4) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8) 8) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)) 16) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))) 32) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))) 64) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) 128) |
(+.f64 -12/29 (*.f64 3 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -12/29 (*.f64 x 3)) 8)))))) 256) |
(+.f64 -12/29 (*.f64 3 x)) |
(pow.f64 (+.f64 -12/29 (*.f64 x 3)) 1) |
(+.f64 -12/29 (*.f64 3 x)) |
Compiled 2706 to 2019 computations (25.4% saved)
11 alts after pruning (5 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 230 | 2 | 232 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 230 | 11 | 241 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.2b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| ▶ | 24.2b | (*.f64 (+.f64 x -12/29) y) |
| ✓ | 34.7b | (*.f64 (*.f64 x 3) y) |
| ▶ | 0.2b | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| ▶ | 34.7b | (*.f64 x (*.f64 3 y)) |
| ▶ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 34.8b | (*.f64 3 (*.f64 y x)) |
| ▶ | 28.3b | (*.f64 -4/29 (*.f64 3 y)) |
| ✓ | 28.2b | (*.f64 -12/29 y) |
Compiled 138 to 103 computations (25.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (+.f64 x -24/29) (*.f64 x 4)) |
| ✓ | 0.2b | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| ✓ | 0.2b | (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4))) |
Compiled 53 to 37 computations (30.2% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | 0 | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| 1.0ms | y | @ | inf | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| 0.0ms | x | @ | 0 | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| 0.0ms | x | @ | -inf | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| 0.0ms | x | @ | inf | (*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| 1× | batch-egg-rewrite |
| 1584× | rational.json-1 |
| 1508× | rational.json-2 |
| 1508× | rational.json-3 |
| 1494× | rational.json-simplify-35 |
| 1458× | exponential.json-3 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 81 |
| 1 | 88 | 63 |
| 2 | 180 | 63 |
| 3 | 406 | 51 |
| 4 | 897 | 51 |
| 5 | 2032 | 51 |
| 6 | 3559 | 51 |
| 7 | 5300 | 51 |
| 8 | 6700 | 51 |
| 9 | 7978 | 51 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4))) |
(*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
(+.f64 (+.f64 x -24/29) (*.f64 x 4)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -24/29 (*.f64 x 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -24/29 (*.f64 x 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 10)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -24/29 (*.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -24/29 (*.f64 x 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -24/29 (*.f64 x 6)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4)) (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6))) (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (+.f64 y y)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 y 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -24/29 (*.f64 x 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (+.f64 x (/.f64 (+.f64 x -24/29) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -24/29 (*.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -24/29 (*.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -24/29 (*.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -24/29 (*.f64 x 5)) 1))))) |
| 1× | egg-herbie |
| 3212× | rational.json-simplify-53 |
| 3104× | rational.json-simplify-2 |
| 2008× | rational.json-simplify-35 |
| 1414× | rational.json-simplify-51 |
| 976× | rational.json-simplify-1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 144 | 1984 |
| 1 | 322 | 1762 |
| 2 | 973 | 1762 |
| 3 | 1935 | 1762 |
| 4 | 4126 | 1762 |
| 5 | 4837 | 1762 |
| 6 | 4934 | 1762 |
| 7 | 5014 | 1762 |
| 8 | 5087 | 1762 |
| 9 | 5160 | 1762 |
| 10 | 6491 | 1762 |
| 11 | 6775 | 1762 |
| 12 | 6848 | 1762 |
| 13 | 6921 | 1762 |
| 14 | 6994 | 1762 |
| 15 | 7067 | 1762 |
| 16 | 7140 | 1762 |
| 17 | 7140 | 1762 |
| 18 | 7140 | 1762 |
| 1× | node limit |
| Inputs |
|---|
-24/29 |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.f64 6 x) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.f64 6 x) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.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 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
-24/29 |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(*.f64 5 x) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(*.f64 5 x) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (+.f64 -24/29 (*.f64 x 6)) 0) |
(*.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4)) |
(*.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(*.f64 1/2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2)) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 10))) |
(*.f64 1/2 (+.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) (+.f64 x x))) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2) 2) |
(*.f64 1 (+.f64 -24/29 (*.f64 x 6))) |
(*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2)) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 1/2) |
(*.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 1/4) |
(*.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 6)))) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4) 4) |
(/.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 2) |
(/.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 4) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))))) 128) |
(pow.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(+.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0) |
(+.f64 0 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y))) |
(+.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4)) (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4))) |
(+.f64 (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6))) (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6)))) |
(-.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y) 2) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (+.f64 y y)) 4) |
(/.f64 (*.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 8) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 y 8)) 16) |
(/.f64 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 32) |
(/.f64 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)))) 128) |
(pow.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1) |
(-.f64 (+.f64 -24/29 (*.f64 x 5)) 0) |
(*.f64 4 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4)) |
(*.f64 4 (+.f64 x (/.f64 (+.f64 x -24/29) 4))) |
(*.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
(*.f64 1/2 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10)))) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 8))) |
(*.f64 1 (+.f64 -24/29 (*.f64 x 5))) |
(*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2)) |
(*.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 1/2) |
(*.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 1/4) |
(*.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 5)))) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2) 2) |
(*.f64 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4) 4) |
(/.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
(/.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 2) |
(/.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 4) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))))) 128) |
(pow.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
| Outputs |
|---|
-24/29 |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.f64 6 x) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.f64 6 x) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(-.f64 (*.f64 6 x) 24/29) |
(*.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 x 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 x 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 x 3))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 x (*.f64 3 y)) |
(*.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 x 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 x 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 x 3))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 x 3)) |
(*.f64 x (*.f64 3 y)) |
(*.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 x 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 x 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 x 3))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 1/2 (*.f64 y (-.f64 (+.f64 (*.f64 2 x) (*.f64 4 x)) 24/29))) |
(*.f64 y (*.f64 (+.f64 (*.f64 x 4) (-.f64 (*.f64 x 2) 24/29)) 1/2)) |
(*.f64 1/2 (*.f64 y (-.f64 (*.f64 6 x) 24/29))) |
(*.f64 (-.f64 (*.f64 6 x) 24/29) (*.f64 y 1/2)) |
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 6 x) 24/29))) |
-24/29 |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(*.f64 5 x) |
(*.f64 x 5) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(*.f64 5 x) |
(*.f64 x 5) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (*.f64 5 x) 24/29) |
(-.f64 (*.f64 x 5) 24/29) |
(-.f64 (+.f64 -24/29 (*.f64 x 6)) 0) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4)) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 1/2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2)) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 10))) |
(*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -48/29) (*.f64 x 10)))) |
(*.f64 1/2 (+.f64 -48/29 (+.f64 (+.f64 x x) (*.f64 x 10)))) |
(*.f64 1/2 (+.f64 -48/29 (+.f64 (*.f64 x 10) (+.f64 x x)))) |
(*.f64 1/2 (+.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) (+.f64 x x))) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 10))) |
(*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -48/29) (*.f64 x 10)))) |
(*.f64 1/2 (+.f64 -48/29 (+.f64 (+.f64 x x) (*.f64 x 10)))) |
(*.f64 1/2 (+.f64 -48/29 (+.f64 (*.f64 x 10) (+.f64 x x)))) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2) 2) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 1 (+.f64 -24/29 (*.f64 x 6))) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/2)) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 1/2) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 1/4) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 6)))) |
(+.f64 -24/29 (*.f64 6 x)) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 1/4) 4) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 2) 2) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 6))) 4) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8) 8) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)) 16) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))) 32) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8)))) 64) |
(+.f64 -24/29 (*.f64 6 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 6)) 8))))) 128) |
(+.f64 -24/29 (*.f64 6 x)) |
(pow.f64 (+.f64 -24/29 (*.f64 x 6)) 1) |
(+.f64 -24/29 (*.f64 6 x)) |
(+.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(+.f64 0 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y))) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(+.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4)) (*.f64 (+.f64 -24/29 (*.f64 x 6)) (/.f64 y 4))) |
(+.f64 (*.f64 (+.f64 -24/29 (*.f64 6 x)) (/.f64 y 4)) (*.f64 (+.f64 -24/29 (*.f64 6 x)) (/.f64 y 4))) |
(*.f64 (/.f64 y 4) (*.f64 2 (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 (*.f64 2 (+.f64 -24/29 (*.f64 6 x))) (/.f64 y 4)) |
(*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 6 x)) (/.f64 y 4))) |
(+.f64 (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6))) (*.f64 (*.f64 y 1/4) (+.f64 -24/29 (*.f64 x 6)))) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(-.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 0) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y) 2) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (+.f64 y y)) 4) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 4 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 8) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 y 8)) 16) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)) 32) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y))) 64) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 16 (*.f64 (+.f64 -24/29 (*.f64 x 6)) y)))) 128) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(pow.f64 (*.f64 (+.f64 -24/29 (*.f64 x 6)) (*.f64 1/2 y)) 1) |
(*.f64 1/2 (*.f64 y (+.f64 -24/29 (*.f64 6 x)))) |
(*.f64 y (*.f64 1/2 (+.f64 -24/29 (*.f64 6 x)))) |
(-.f64 (+.f64 -24/29 (*.f64 x 5)) 0) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 4 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4)) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 4 (+.f64 x (/.f64 (+.f64 x -24/29) 4))) |
(*.f64 4 (+.f64 x (/.f64 (+.f64 -24/29 x) 4))) |
(*.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 1/2 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10)))) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x -48/29)) (*.f64 x 8))) |
(*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -48/29) (*.f64 x 8)))) |
(*.f64 1/2 (+.f64 (*.f64 x 8) (+.f64 -48/29 (+.f64 x x)))) |
(*.f64 1/2 (+.f64 (+.f64 x x) (+.f64 (*.f64 x 8) -48/29))) |
(*.f64 1/2 (+.f64 (+.f64 x x) (+.f64 -48/29 (*.f64 x 8)))) |
(*.f64 1 (+.f64 -24/29 (*.f64 x 5))) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2)) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 1/2) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 1/4) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 1/4 (*.f64 4 (+.f64 -24/29 (*.f64 x 5)))) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 1/2) 2) |
(+.f64 -24/29 (*.f64 x 5)) |
(*.f64 (/.f64 (+.f64 -24/29 (*.f64 x 5)) 4) 4) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (+.f64 -24/29 (+.f64 -24/29 (*.f64 x 10))) 2) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 4 (+.f64 -24/29 (*.f64 x 5))) 4) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8) 8) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)) 16) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))) 32) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8)))) 64) |
(+.f64 -24/29 (*.f64 x 5)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -24/29 (*.f64 x 5)) 8))))) 128) |
(+.f64 -24/29 (*.f64 x 5)) |
(pow.f64 (+.f64 -24/29 (*.f64 x 5)) 1) |
(+.f64 -24/29 (*.f64 x 5)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (*.f64 -4/29 (*.f64 3 y)) |
Compiled 13 to 10 computations (23.1% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (*.f64 -4/29 (*.f64 3 y)) |
| 0.0ms | y | @ | inf | (*.f64 -4/29 (*.f64 3 y)) |
| 0.0ms | y | @ | -inf | (*.f64 -4/29 (*.f64 3 y)) |
| 1× | batch-egg-rewrite |
| 3338× | rational.json-simplify-35 |
| 2312× | rational.json-simplify-2 |
| 1152× | rational.json-simplify-1 |
| 1036× | exponential.json-3 |
| 1036× | rational.json-1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 7 |
| 2 | 111 | 7 |
| 3 | 222 | 7 |
| 4 | 401 | 7 |
| 5 | 878 | 7 |
| 6 | 1889 | 7 |
| 7 | 2955 | 7 |
| 8 | 3366 | 7 |
| 9 | 3925 | 7 |
| 10 | 4572 | 7 |
| 11 | 4955 | 7 |
| 12 | 4955 | 7 |
| 13 | 5398 | 7 |
| 14 | 5398 | 7 |
| 15 | 5819 | 7 |
| 16 | 6515 | 7 |
| 17 | 7427 | 7 |
| 18 | 7810 | 7 |
| 19 | 7864 | 7 |
| 20 | 7864 | 7 |
| 21 | 7864 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -4/29 (*.f64 3 y)) |
| Outputs |
|---|
((#(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 -4/29 y) (*.f64 y -8/29))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -8/29) (*.f64 -4/29 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -6/29) (*.f64 y -6/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -24/29) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -48/29) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y -12/29) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))))) 2048)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))))) 4096)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -12/29) 1))))) |
| 1× | egg-herbie |
| 2522× | rational.json-simplify-2 |
| 2308× | rational.json-simplify-51 |
| 2284× | rational.json-simplify-41 |
| 2192× | rational.json-simplify-35 |
| 488× | exponential.json-simplify-26 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 60 | 224 |
| 1 | 156 | 224 |
| 2 | 300 | 224 |
| 3 | 1045 | 224 |
| 4 | 2428 | 224 |
| 5 | 3094 | 224 |
| 6 | 3414 | 224 |
| 7 | 3501 | 224 |
| 8 | 3576 | 224 |
| 9 | 3651 | 224 |
| 10 | 7041 | 224 |
| 11 | 7341 | 224 |
| 12 | 7426 | 224 |
| 13 | 7498 | 224 |
| 14 | 7570 | 224 |
| 15 | 7642 | 224 |
| 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 (*.f64 y -12/29) 0) |
(+.f64 0 (*.f64 y -12/29)) |
(+.f64 (*.f64 -4/29 y) (*.f64 y -8/29)) |
(+.f64 (*.f64 y -8/29) (*.f64 -4/29 y)) |
(+.f64 (*.f64 y -6/29) (*.f64 y -6/29)) |
(-.f64 (*.f64 y -12/29) 0) |
(/.f64 (*.f64 y -12/29) 1) |
(/.f64 (*.f64 y -24/29) 2) |
(/.f64 (*.f64 y -48/29) 4) |
(/.f64 (*.f64 (*.f64 y -12/29) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))) 512) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))) 1024) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))))) 2048) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))))) 4096) |
(pow.f64 (*.f64 y -12/29) 1) |
| 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 (*.f64 y -12/29) 0) |
(*.f64 -12/29 y) |
(+.f64 0 (*.f64 y -12/29)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 -4/29 y) (*.f64 y -8/29)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -8/29) (*.f64 -4/29 y)) |
(*.f64 -12/29 y) |
(+.f64 (*.f64 y -6/29) (*.f64 y -6/29)) |
(*.f64 -12/29 y) |
(-.f64 (*.f64 y -12/29) 0) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -12/29) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -24/29) 2) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -48/29) 4) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 (*.f64 y -12/29) 8) 8) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)) 16) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))) 32) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))) 64) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))) 128) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))) 256) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))) 512) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))) 1024) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8))))))))) 2048) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y -12/29) 8)))))))))) 4096) |
(*.f64 -12/29 y) |
(pow.f64 (*.f64 y -12/29) 1) |
(*.f64 -12/29 y) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 x (*.f64 3 y)) |
Compiled 13 to 8 computations (38.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | -inf | (*.f64 x (*.f64 3 y)) |
| 0.0ms | x | @ | 0 | (*.f64 x (*.f64 3 y)) |
| 0.0ms | y | @ | -inf | (*.f64 x (*.f64 3 y)) |
| 0.0ms | x | @ | inf | (*.f64 x (*.f64 3 y)) |
| 0.0ms | y | @ | inf | (*.f64 x (*.f64 3 y)) |
| 1× | batch-egg-rewrite |
| 2642× | rational.json-simplify-2 |
| 2192× | rational.json-simplify-35 |
| 1154× | rational.json-simplify-1 |
| 1056× | exponential.json-3 |
| 1056× | rational.json-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 114 | 13 |
| 3 | 239 | 13 |
| 4 | 433 | 13 |
| 5 | 991 | 13 |
| 6 | 2197 | 13 |
| 7 | 3785 | 13 |
| 8 | 4693 | 13 |
| 9 | 5589 | 13 |
| 10 | 6387 | 13 |
| 11 | 6387 | 13 |
| 12 | 7243 | 13 |
| 13 | 7243 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 x (*.f64 3 y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 3 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 y y)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 3 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 3 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x y) 12) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x y) 24) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 3 y)) 1))))) |
| 1× | egg-herbie |
| 5576× | rational.json-simplify-35 |
| 1958× | rational.json-simplify-2 |
| 1076× | rational.json-simplify-1 |
| 780× | exponential.json-simplify-26 |
| 674× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 56 | 533 |
| 1 | 136 | 533 |
| 2 | 279 | 533 |
| 3 | 701 | 533 |
| 4 | 1912 | 533 |
| 5 | 3414 | 533 |
| 6 | 4203 | 533 |
| 7 | 4694 | 533 |
| 8 | 4897 | 533 |
| 9 | 5074 | 533 |
| 10 | 5247 | 533 |
| 11 | 5432 | 533 |
| 12 | 5487 | 533 |
| 13 | 5570 | 533 |
| 14 | 5616 | 533 |
| 15 | 5699 | 533 |
| 16 | 5928 | 533 |
| 17 | 6131 | 533 |
| 18 | 6326 | 533 |
| 19 | 6496 | 533 |
| 20 | 6658 | 533 |
| 21 | 6819 | 533 |
| 22 | 6980 | 533 |
| 23 | 7141 | 533 |
| 24 | 7141 | 533 |
| 25 | 7302 | 533 |
| 26 | 7463 | 533 |
| 27 | 7624 | 533 |
| 28 | 7785 | 533 |
| 29 | 7946 | 533 |
| 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 3 y)) 0) |
(+.f64 0 (*.f64 x (*.f64 3 y))) |
(+.f64 (*.f64 x y) (*.f64 x (+.f64 y y))) |
(+.f64 (*.f64 x (+.f64 y y)) (*.f64 x y)) |
(+.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2))) |
(-.f64 (*.f64 x (*.f64 3 y)) 0) |
(/.f64 (*.f64 x (*.f64 3 y)) 1) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(/.f64 (*.f64 (*.f64 x y) 12) 4) |
(/.f64 (*.f64 (*.f64 x y) 24) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512) |
(pow.f64 (*.f64 x (*.f64 3 y)) 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 3 y)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 0 (*.f64 x (*.f64 3 y))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 x y) (*.f64 x (+.f64 y y))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 x (+.f64 y y)) (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(+.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2))) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(-.f64 (*.f64 x (*.f64 3 y)) 0) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 3 y)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 (*.f64 x y) 12) 4) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 (*.f64 x y) 24) 8) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 x y) 24)) 16) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))) 32) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))) 64) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))) 128) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) 256) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x y) 24))))))) 512) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
(pow.f64 (*.f64 x (*.f64 3 y)) 1) |
(*.f64 3 (*.f64 y x)) |
(*.f64 y (*.f64 3 x)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (+.f64 x -12/29) | |
| ✓ | 0.1b | (*.f64 (+.f64 x -12/29) y) |
Compiled 13 to 8 computations (38.5% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | y | @ | inf | (*.f64 (+.f64 x -12/29) y) |
| 0.0ms | y | @ | 0 | (*.f64 (+.f64 x -12/29) y) |
| 0.0ms | x | @ | -inf | (*.f64 (+.f64 x -12/29) y) |
| 0.0ms | x | @ | 0 | (*.f64 (+.f64 x -12/29) y) |
| 0.0ms | y | @ | -inf | (*.f64 (+.f64 x -12/29) y) |
| 1× | batch-egg-rewrite |
| 2428× | rational.json-simplify-35 |
| 1494× | rational.json-simplify-1 |
| 1476× | rational.json-simplify-53 |
| 1242× | exponential.json-3 |
| 1242× | rational.json-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 46 | 13 |
| 2 | 99 | 13 |
| 3 | 201 | 13 |
| 4 | 369 | 13 |
| 5 | 820 | 13 |
| 6 | 2062 | 13 |
| 7 | 3654 | 13 |
| 8 | 4762 | 13 |
| 9 | 6159 | 13 |
| 10 | 6898 | 13 |
| 11 | 6898 | 13 |
| 12 | 6898 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (+.f64 x -12/29) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -12/29) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 x -12/29) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 1/2)) (*.f64 (+.f64 x -12/29) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 x -12/29) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 16 (*.f64 (+.f64 x -12/29) y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x -12/29) (*.f64 8 (*.f64 y 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x -12/29) y) 1))))) |
| 1× | egg-herbie |
| 2660× | rational.json-simplify-35 |
| 1974× | rational.json-simplify-2 |
| 1614× | rational.json-simplify-1 |
| 1608× | rational.json-simplify-53 |
| 1156× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 55 | 489 |
| 1 | 142 | 489 |
| 2 | 298 | 489 |
| 3 | 737 | 489 |
| 4 | 2397 | 489 |
| 5 | 4679 | 489 |
| 6 | 4983 | 489 |
| 7 | 5178 | 489 |
| 8 | 5351 | 489 |
| 9 | 5506 | 489 |
| 10 | 5508 | 489 |
| 11 | 6946 | 489 |
| 12 | 7600 | 489 |
| 13 | 7684 | 489 |
| 14 | 7685 | 489 |
| 15 | 7838 | 489 |
| 16 | 7991 | 489 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(+.f64 (*.f64 (+.f64 x -12/29) y) 0) |
(+.f64 0 (*.f64 (+.f64 x -12/29) y)) |
(+.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 1/2)) (*.f64 (+.f64 x -12/29) (*.f64 y 1/2))) |
(-.f64 (*.f64 (+.f64 x -12/29) y) 0) |
(/.f64 (*.f64 (+.f64 x -12/29) y) 1) |
(/.f64 (*.f64 (+.f64 x -12/29) (+.f64 y y)) 2) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 4)) 4) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 8)) 8) |
(/.f64 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))) 128) |
(/.f64 (*.f64 16 (*.f64 (+.f64 x -12/29) y)) 16) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 8 (*.f64 y 4))) 32) |
(/.f64 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))))) 512) |
(pow.f64 (*.f64 (+.f64 x -12/29) y) 1) |
| Outputs |
|---|
(*.f64 -12/29 y) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 y x) (*.f64 -12/29 y)) |
(*.f64 y (+.f64 -12/29 x)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(*.f64 y (-.f64 x 12/29)) |
(+.f64 (*.f64 (+.f64 x -12/29) y) 0) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 0 (*.f64 (+.f64 x -12/29) y)) |
(*.f64 y (+.f64 -12/29 x)) |
(+.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 1/2)) (*.f64 (+.f64 x -12/29) (*.f64 y 1/2))) |
(*.f64 y (+.f64 -12/29 x)) |
(-.f64 (*.f64 (+.f64 x -12/29) y) 0) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 x -12/29) y) 1) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 x -12/29) (+.f64 y y)) 2) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 4)) 4) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 y 8)) 8) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))) 128) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 16 (*.f64 (+.f64 x -12/29) y)) 16) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 (+.f64 x -12/29) (*.f64 8 (*.f64 y 4))) 32) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))) 64) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) 256) |
(*.f64 y (+.f64 -12/29 x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8))))) (*.f64 2 (*.f64 2 (*.f64 8 (*.f64 (+.f64 x -12/29) (*.f64 y 8)))))) 512) |
(*.f64 y (+.f64 -12/29 x)) |
(pow.f64 (*.f64 (+.f64 x -12/29) y) 1) |
(*.f64 y (+.f64 -12/29 x)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (-.f64 x 4/29) | |
| ✓ | 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 | @ | inf | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 0.0ms | y | @ | 0 | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 0.0ms | x | @ | inf | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| 1× | batch-egg-rewrite |
| 2558× | rational.json-simplify-35 |
| 1400× | rational.json-simplify-1 |
| 1232× | exponential.json-3 |
| 1232× | rational.json-1 |
| 1232× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 60 | 32 |
| 2 | 130 | 32 |
| 3 | 268 | 32 |
| 4 | 488 | 32 |
| 5 | 1110 | 32 |
| 6 | 2470 | 32 |
| 7 | 4236 | 32 |
| 8 | 5215 | 32 |
| 9 | 6214 | 32 |
| 10 | 7125 | 32 |
| 11 | 7125 | 32 |
| 12 | 7125 | 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 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/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 0 (*.f64 3 (*.f64 y (+.f64 x -4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (+.f64 x -8/29))) (*.f64 y (+.f64 x -4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 3/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 3/2)))))) (#(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 y (*.f64 (+.f64 x -4/29) 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))))) 512)))) (#(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 (+.f64 x -4/29) 1/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 1/2)))))) (#(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 (+.f64 x -8/29))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 x -4/29) 8) y) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 x -4/29)) 1))))) |
| 1× | egg-herbie |
| 3994× | rational.json-simplify-41 |
| 3384× | rational.json-simplify-35 |
| 2068× | rational.json-simplify-2 |
| 962× | exponential.json-simplify-26 |
| 928× | rational.json-simplify-49 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 92 | 1220 |
| 1 | 230 | 1064 |
| 2 | 478 | 1064 |
| 3 | 1044 | 860 |
| 4 | 2750 | 860 |
| 5 | 4247 | 860 |
| 6 | 4640 | 860 |
| 7 | 4853 | 860 |
| 8 | 5016 | 860 |
| 9 | 5177 | 860 |
| 10 | 5849 | 860 |
| 11 | 6173 | 860 |
| 12 | 6173 | 860 |
| 13 | 6174 | 860 |
| 14 | 6177 | 860 |
| 15 | 6330 | 860 |
| 16 | 6482 | 860 |
| 17 | 6634 | 860 |
| 18 | 6786 | 860 |
| 19 | 6938 | 860 |
| 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 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(+.f64 (*.f64 3 (*.f64 y (+.f64 x -4/29))) 0) |
(+.f64 0 (*.f64 3 (*.f64 y (+.f64 x -4/29)))) |
(+.f64 (*.f64 y (+.f64 x (+.f64 x -8/29))) (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 3/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 3/2))) |
(-.f64 (*.f64 3 (*.f64 y (+.f64 x -4/29))) 0) |
(/.f64 (*.f64 3 (*.f64 y (+.f64 x -4/29))) 1) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 6)) 2) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 12)) 4) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))) 8) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))))) 512) |
(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 (+.f64 x -4/29) 1/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 1/2))) |
(-.f64 (*.f64 y (+.f64 x -4/29)) 0) |
(/.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(/.f64 (*.f64 y (+.f64 x (+.f64 x -8/29))) 2) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 4)) 4) |
(/.f64 (*.f64 (*.f64 (+.f64 x -4/29) 8) y) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) 256) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))))) 512) |
(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 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y x) (*.f64 -4/29 y)) |
(*.f64 y (+.f64 x -4/29)) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (+.f64 x -8/29))) (*.f64 y (+.f64 x -4/29))) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(+.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 3/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 3/2))) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 6)) 2) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 12)) 4) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))) 8) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))) 16) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))) 32) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))) 64) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))) 128) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) 256) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.f64 x -4/29)))) |
(*.f64 y (*.f64 3 (+.f64 x -4/29))) |
(*.f64 (+.f64 x -4/29) (*.f64 y 3)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12)))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 (+.f64 x -4/29) 12))))))))) 512) |
(+.f64 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (*.f64 y (+.f64 x -4/29)) (*.f64 y (+.f64 x (+.f64 x -8/29)))) |
(*.f64 y (+.f64 (+.f64 x (+.f64 x -8/29)) (+.f64 x -4/29))) |
(*.f64 y (+.f64 x (+.f64 (+.f64 x -8/29) (+.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 (+.f64 x -4/29) 1/2)) (*.f64 y (*.f64 (+.f64 x -4/29) 1/2))) |
(*.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 (+.f64 x -8/29))) 2) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 y (*.f64 (+.f64 x -4/29) 4)) 4) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 (*.f64 (+.f64 x -4/29) 8) y) 8) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)) 16) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))) 32) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))) 64) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))) 128) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) 256) |
(*.f64 y (+.f64 x -4/29)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 x -4/29) 8) y))))))) 512) |
(*.f64 y (+.f64 x -4/29)) |
(pow.f64 (*.f64 y (+.f64 x -4/29)) 1) |
(*.f64 y (+.f64 x -4/29)) |
Compiled 2997 to 2361 computations (21.2% saved)
13 alts after pruning (3 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 256 | 3 | 259 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 9 | 10 |
| Total | 257 | 13 | 270 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.2b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| ✓ | 24.2b | (*.f64 (+.f64 x -12/29) y) |
| ✓ | 34.7b | (*.f64 (*.f64 x 3) y) |
| ▶ | 34.7b | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| ▶ | 57.2b | (*.f64 y x) |
| ✓ | 34.7b | (*.f64 x (*.f64 3 y)) |
| ✓ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 34.8b | (*.f64 3 (*.f64 y x)) |
| ▶ | 28.3b | (*.f64 3 (*.f64 y -4/29)) |
| ✓ | 28.3b | (*.f64 -4/29 (*.f64 3 y)) |
| ✓ | 28.2b | (*.f64 -12/29 y) |
Compiled 101 to 75 computations (25.7% 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 | @ | -inf | (*.f64 3 (*.f64 y -4/29)) |
| 0.0ms | y | @ | 0 | (*.f64 3 (*.f64 y -4/29)) |
| 1× | batch-egg-rewrite |
| 3624× | rational.json-simplify-35 |
| 1826× | rational.json-simplify-2 |
| 1062× | exponential.json-3 |
| 1062× | rational.json-1 |
| 1062× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 14 |
| 1 | 49 | 14 |
| 2 | 108 | 14 |
| 3 | 216 | 14 |
| 4 | 396 | 14 |
| 5 | 863 | 14 |
| 6 | 2044 | 14 |
| 7 | 3257 | 14 |
| 8 | 3689 | 14 |
| 9 | 4322 | 14 |
| 10 | 5063 | 14 |
| 11 | 5516 | 14 |
| 12 | 5516 | 14 |
| 13 | 6025 | 14 |
| 14 | 6025 | 14 |
| 15 | 6503 | 14 |
| 16 | 7306 | 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 -6/29) (*.f64 y -6/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -12/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -12/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -24/29) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -48/29) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -96/29) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y -96/29)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) 2048)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))))) 4096)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -12/29) 1))))) |
((#(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 -2/29) (*.f64 y -2/29))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y -4/29) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -8/29) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -16/29) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -32/29) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y -32/29)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y -32/29))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) 2048)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))))) 4096)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y -4/29) 1))))) |
| 1× | egg-herbie |
| 4674× | rational.json-simplify-41 |
| 1990× | rational.json-simplify-35 |
| 1550× | rational.json-simplify-2 |
| 892× | rational.json-simplify-51 |
| 652× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 95 | 434 |
| 1 | 236 | 434 |
| 2 | 447 | 434 |
| 3 | 1110 | 434 |
| 4 | 3035 | 434 |
| 5 | 4024 | 434 |
| 6 | 4233 | 434 |
| 7 | 4377 | 434 |
| 8 | 4481 | 434 |
| 9 | 4582 | 434 |
| 10 | 4676 | 434 |
| 11 | 4812 | 434 |
| 12 | 4900 | 434 |
| 13 | 4988 | 434 |
| 14 | 4988 | 434 |
| 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 -6/29) (*.f64 y -6/29)) |
(-.f64 (*.f64 y -12/29) 0) |
(/.f64 (*.f64 y -12/29) 1) |
(/.f64 (*.f64 y -24/29) 2) |
(/.f64 (*.f64 y -48/29) 4) |
(/.f64 (*.f64 y -96/29) 8) |
(/.f64 (*.f64 2 (*.f64 y -96/29)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) 2048) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))))) 4096) |
(pow.f64 (*.f64 y -12/29) 1) |
(+.f64 (*.f64 y -4/29) 0) |
(+.f64 0 (*.f64 y -4/29)) |
(+.f64 (*.f64 y -2/29) (*.f64 y -2/29)) |
(-.f64 (*.f64 y -4/29) 0) |
(/.f64 (*.f64 y -4/29) 1) |
(/.f64 (*.f64 y -8/29) 2) |
(/.f64 (*.f64 y -16/29) 4) |
(/.f64 (*.f64 y -32/29) 8) |
(/.f64 (*.f64 2 (*.f64 y -32/29)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -32/29))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))) 512) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))) 1024) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) 2048) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))))) 4096) |
(pow.f64 (*.f64 y -4/29) 1) |
| 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 -6/29) (*.f64 y -6/29)) |
(*.f64 -12/29 y) |
(-.f64 (*.f64 y -12/29) 0) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -12/29) 1) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -24/29) 2) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -48/29) 4) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 y -96/29) 8) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 y -96/29)) 16) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -96/29))) 32) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))) 64) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))) 128) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))) 256) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))) 512) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))) 1024) |
(*.f64 -12/29 y) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) 2048) |
(*.f64 -12/29 y) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -96/29)))))))))) 4096) |
(*.f64 -12/29 y) |
(pow.f64 (*.f64 y -12/29) 1) |
(*.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 -2/29) (*.f64 y -2/29)) |
(*.f64 y -4/29) |
(-.f64 (*.f64 y -4/29) 0) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -8/29) 2) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -16/29) 4) |
(*.f64 y -4/29) |
(/.f64 (*.f64 y -32/29) 8) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 y -32/29)) 16) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y -32/29))) 32) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))) 64) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))) 128) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))) 256) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))) 512) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))) 1024) |
(*.f64 y -4/29) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) 2048) |
(*.f64 y -4/29) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y -32/29)))))))))) 4096) |
(*.f64 y -4/29) |
(pow.f64 (*.f64 y -4/29) 1) |
(*.f64 y -4/29) |
Compiled 7 to 3 computations (57.1% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| ✓ | 0.5b | (+.f64 x (*.f64 x 5)) |
Compiled 30 to 20 computations (33.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | y | @ | 0 | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| 0.0ms | x | @ | 0 | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| 0.0ms | x | @ | inf | (+.f64 x (*.f64 x 5)) |
| 0.0ms | x | @ | 0 | (+.f64 x (*.f64 x 5)) |
| 1× | batch-egg-rewrite |
| 1824× | rational.json-simplify-35 |
| 1396× | rational.json-1 |
| 1396× | rational.json-2 |
| 1396× | rational.json-3 |
| 1382× | exponential.json-3 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 38 |
| 1 | 66 | 26 |
| 2 | 135 | 20 |
| 3 | 297 | 20 |
| 4 | 584 | 20 |
| 5 | 1506 | 20 |
| 6 | 3496 | 20 |
| 7 | 5563 | 20 |
| 8 | 6747 | 20 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (*.f64 x 5)) |
(*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 6) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x 6)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 x 12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 3) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 12) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) 3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 6 x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 24) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 12 (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) 12)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 x 24))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 3/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 12) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 24) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 24)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 x 24))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 6) 1))))) |
((#(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 y) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 y y)) (*.f64 x y))))) (#(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 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x 12)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x 24)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 x 24))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 y 3)) 1))))) |
| 1× | egg-herbie |
| 2882× | rational.json-simplify-2 |
| 1892× | rational.json-simplify-1 |
| 1498× | rational.json-simplify-35 |
| 1180× | rational.json-simplify-51 |
| 1180× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 101 | 800 |
| 1 | 227 | 800 |
| 2 | 526 | 800 |
| 3 | 1469 | 800 |
| 4 | 3293 | 800 |
| 5 | 5762 | 800 |
| 6 | 6060 | 800 |
| 7 | 6254 | 800 |
| 8 | 6385 | 800 |
| 9 | 6510 | 800 |
| 10 | 7544 | 800 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 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 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(-.f64 (*.f64 x 6) 0) |
(*.f64 x 6) |
(*.f64 (*.f64 x 6) 1) |
(*.f64 1/2 (*.f64 x 12)) |
(*.f64 (*.f64 x 3) 2) |
(*.f64 1 (*.f64 x 6)) |
(*.f64 2 (*.f64 x 3)) |
(*.f64 (*.f64 x 12) 1/2) |
(*.f64 (+.f64 x x) 3) |
(*.f64 6 x) |
(*.f64 4 (*.f64 x 3/2)) |
(*.f64 (*.f64 x 24) 1/4) |
(*.f64 (*.f64 x 4) 3/2) |
(*.f64 3 (+.f64 x x)) |
(*.f64 12 (*.f64 x 1/2)) |
(*.f64 (*.f64 x 1/2) 12) |
(*.f64 1/4 (*.f64 x 24)) |
(*.f64 (*.f64 x 3/2) 4) |
(/.f64 (*.f64 x 6) 1) |
(/.f64 (*.f64 x 12) 2) |
(/.f64 (*.f64 x 24) 4) |
(/.f64 (*.f64 2 (*.f64 x 24)) 8) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x 24))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))))) 256) |
(pow.f64 (*.f64 x 6) 1) |
(+.f64 (*.f64 x (*.f64 y 3)) 0) |
(+.f64 0 (*.f64 x (*.f64 y 3))) |
(+.f64 (*.f64 x y) (*.f64 x (+.f64 y y))) |
(+.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2))) |
(+.f64 (*.f64 x (+.f64 y y)) (*.f64 x y)) |
(-.f64 (*.f64 x (*.f64 y 3)) 0) |
(/.f64 (*.f64 x (*.f64 y 3)) 1) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(/.f64 (*.f64 y (*.f64 x 12)) 4) |
(/.f64 (*.f64 y (*.f64 x 24)) 8) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 x 24))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) 128) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))))) 256) |
(pow.f64 (*.f64 x (*.f64 y 3)) 1) |
| Outputs |
|---|
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(*.f64 1/2 (*.f64 y (+.f64 (*.f64 5 x) x))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(-.f64 (*.f64 x 6) 0) |
(*.f64 6 x) |
(*.f64 x 6) |
(*.f64 6 x) |
(*.f64 (*.f64 x 6) 1) |
(*.f64 6 x) |
(*.f64 1/2 (*.f64 x 12)) |
(*.f64 6 x) |
(*.f64 (*.f64 x 3) 2) |
(*.f64 6 x) |
(*.f64 1 (*.f64 x 6)) |
(*.f64 6 x) |
(*.f64 2 (*.f64 x 3)) |
(*.f64 6 x) |
(*.f64 (*.f64 x 12) 1/2) |
(*.f64 6 x) |
(*.f64 (+.f64 x x) 3) |
(*.f64 6 x) |
(*.f64 6 x) |
(*.f64 4 (*.f64 x 3/2)) |
(*.f64 6 x) |
(*.f64 (*.f64 x 24) 1/4) |
(*.f64 6 x) |
(*.f64 (*.f64 x 4) 3/2) |
(*.f64 6 x) |
(*.f64 3 (+.f64 x x)) |
(*.f64 6 x) |
(*.f64 12 (*.f64 x 1/2)) |
(*.f64 6 x) |
(*.f64 (*.f64 x 1/2) 12) |
(*.f64 6 x) |
(*.f64 1/4 (*.f64 x 24)) |
(*.f64 6 x) |
(*.f64 (*.f64 x 3/2) 4) |
(*.f64 6 x) |
(/.f64 (*.f64 x 6) 1) |
(*.f64 6 x) |
(/.f64 (*.f64 x 12) 2) |
(*.f64 6 x) |
(/.f64 (*.f64 x 24) 4) |
(*.f64 6 x) |
(/.f64 (*.f64 2 (*.f64 x 24)) 8) |
(*.f64 6 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x 24))) 16) |
(*.f64 6 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))) 32) |
(*.f64 6 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))) 64) |
(*.f64 6 x) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) 128) |
(*.f64 6 x) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 24))))))) 256) |
(*.f64 6 x) |
(pow.f64 (*.f64 x 6) 1) |
(*.f64 6 x) |
(+.f64 (*.f64 x (*.f64 y 3)) 0) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(+.f64 0 (*.f64 x (*.f64 y 3))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(+.f64 (*.f64 x y) (*.f64 x (+.f64 y y))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(+.f64 (*.f64 x (*.f64 y 3/2)) (*.f64 x (*.f64 y 3/2))) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(+.f64 (*.f64 x (+.f64 y y)) (*.f64 x y)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(-.f64 (*.f64 x (*.f64 y 3)) 0) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 x (*.f64 y 3)) 1) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 x (*.f64 y 6)) 2) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 y (*.f64 x 12)) 4) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 y (*.f64 x 24)) 8) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 x 24))) 16) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))) 32) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))) 64) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) 128) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 x 24))))))) 256) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
(pow.f64 (*.f64 x (*.f64 y 3)) 1) |
(*.f64 x (*.f64 3 y)) |
(*.f64 3 (*.f64 x y)) |
Compiled 953 to 791 computations (17% saved)
13 alts after pruning (0 fresh and 13 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 89 | 0 | 89 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 12 | 12 |
| Total | 89 | 13 | 102 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
| ✓ | 0.2b | (*.f64 (-.f64 x 4/29) (*.f64 3 y)) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
| ✓ | 24.2b | (*.f64 (+.f64 x -12/29) y) |
| ✓ | 34.7b | (*.f64 (*.f64 x 3) y) |
| ✓ | 34.7b | (*.f64 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
| ✓ | 57.2b | (*.f64 y x) |
| ✓ | 34.7b | (*.f64 x (*.f64 3 y)) |
| ✓ | 0.3b | (*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| ✓ | 34.8b | (*.f64 3 (*.f64 y x)) |
| ✓ | 28.3b | (*.f64 3 (*.f64 y -4/29)) |
| ✓ | 28.3b | (*.f64 -4/29 (*.f64 3 y)) |
| ✓ | 28.2b | (*.f64 -12/29 y) |
Compiled 101 to 75 computations (25.7% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 (*.f64 x 3) y) |
(*.f64 (+.f64 x -12/29) 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 (*.f64 1/2 (+.f64 x (*.f64 x 5))) y) |
(*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
(*.f64 (+.f64 x (+.f64 x (+.f64 x -12/29))) y) |
(*.f64 (*.f64 1/2 (+.f64 x (+.f64 (+.f64 x -24/29) (*.f64 x 4)))) y) |
| Outputs |
|---|
(*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
5 calls:
| 56.0ms | (*.f64 (-.f64 x (/.f64 16 116)) 3) |
| 8.0ms | y |
| 8.0ms | x |
| 8.0ms | (*.f64 (*.f64 (-.f64 x (/.f64 16 116)) 3) y) |
| 5.0ms | (-.f64 x (/.f64 16 116)) |
| 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 139 to 98 computations (29.5% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 (*.f64 x 3) y) |
(*.f64 (+.f64 x -12/29) 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)) |
| Outputs |
|---|
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
2 calls:
| 7.0ms | y |
| 6.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.2b | 1 | x |
| 0.2b | 1 | y |
Compiled 65 to 43 computations (33.8% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 (*.f64 x 3) y) |
(*.f64 (+.f64 x -12/29) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
| Outputs |
|---|
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
2 calls:
| 6.0ms | y |
| 5.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.3b | 1 | x |
| 0.3b | 1 | y |
Compiled 51 to 33 computations (35.3% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 (*.f64 x 3) y) |
(*.f64 (+.f64 x -12/29) y) |
| Outputs |
|---|
(*.f64 (*.f64 x 3) y) |
(*.f64 (+.f64 x -12/29) y) |
(*.f64 x (*.f64 3 y)) |
2 calls:
| 42.0ms | y |
| 15.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.7b | 3 | x |
| 18.8b | 7 | y |
Compiled 44 to 28 computations (36.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 1.914280378772471e-5 | 2798.4325383448054 |
| 14.0ms | -0.3862571113998659 | -0.0014612077474017652 |
| 27.0ms | 272× | body | 256 | valid |
Compiled 288 to 217 computations (24.7% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
(*.f64 (*.f64 x 3) y) |
| Outputs |
|---|
(*.f64 (*.f64 x 3) y) |
(*.f64 -12/29 y) |
(*.f64 x (*.f64 3 y)) |
2 calls:
| 31.0ms | y |
| 14.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.7b | 3 | x |
| 20.9b | 7 | y |
Compiled 39 to 25 computations (35.9% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 1.914280378772471e-5 | 2798.4325383448054 |
| 14.0ms | -0.3862571113998659 | -0.0014612077474017652 |
| 25.0ms | 272× | body | 256 | valid |
Compiled 254 to 200 computations (21.3% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
(*.f64 3 (*.f64 y x)) |
(*.f64 x (*.f64 3 y)) |
| Outputs |
|---|
(*.f64 x (*.f64 3 y)) |
(*.f64 -12/29 y) |
(*.f64 x (*.f64 3 y)) |
2 calls:
| 29.0ms | y |
| 12.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.7b | 3 | x |
| 20.9b | 7 | y |
Compiled 34 to 22 computations (35.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 23.0ms | 1.914280378772471e-5 | 2798.4325383448054 |
| 14.0ms | -0.3862571113998659 | -0.0014612077474017652 |
| 31.0ms | 272× | body | 256 | valid |
Compiled 254 to 200 computations (21.3% saved)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 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:
| 26.0ms | y |
| 12.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 1.8b | 3 | x |
| 20.9b | 7 | y |
Compiled 29 to 19 computations (34.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 1.914280378772471e-5 | 2798.4325383448054 |
| 14.0ms | -0.3862571113998659 | -0.0014612077474017652 |
| 30.0ms | 272× | body | 256 | valid |
Compiled 254 to 200 computations (21.3% saved)
Total -37.0b remaining (-152.6%)
Threshold costs -37.0b (-152.6%)
| Inputs |
|---|
(*.f64 -12/29 y) |
(*.f64 y x) |
(*.f64 -4/29 (*.f64 3 y)) |
(*.f64 3 (*.f64 y -4/29)) |
| Outputs |
|---|
(*.f64 y x) |
(*.f64 -12/29 y) |
(*.f64 y x) |
2 calls:
| 20.0ms | x |
| 8.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 24.2b | 3 | x |
| 28.2b | 1 | y |
Compiled 24 to 17 computations (29.2% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 26.0ms | 1.914280378772471e-5 | 2798.4325383448054 |
| 146.0ms | -267065.30832556874 | -0.3862571113998659 |
| 167.0ms | 288× | body | 256 | valid |
Compiled 232 to 175 computations (24.6% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 45 | 313 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(if (<=.f64 x -7385903388887613/36028797018963968) (*.f64 (*.f64 x 3) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 (+.f64 x -12/29) y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 (*.f64 x 3) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 x (*.f64 3 y)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 3 (*.f64 y x)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(if (<=.f64 x -7385903388887613/18014398509481984) (*.f64 y x) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 y x))) |
(*.f64 -12/29 y) |
| Outputs |
|---|
(*.f64 (-.f64 (*.f64 3 x) 12/29) y) |
(*.f64 (*.f64 (-.f64 x 4/29) 3) y) |
(*.f64 3 (*.f64 y (-.f64 x 4/29))) |
(if (<=.f64 x -7385903388887613/36028797018963968) (*.f64 (*.f64 x 3) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 (+.f64 x -12/29) y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 (*.f64 x 3) y) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 x (*.f64 3 y)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 x (*.f64 3 y)))) |
(if (<=.f64 x -1261007895663739/9007199254740992) (*.f64 3 (*.f64 y x)) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 3 (*.f64 y x)))) |
(if (<=.f64 x -7385903388887613/18014398509481984) (*.f64 y x) (if (<=.f64 x 1261007895663739/9007199254740992) (*.f64 -12/29 y) (*.f64 y x))) |
(*.f64 -12/29 y) |
Compiled 145 to 100 computations (31% 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 129 to 83 computations (35.7% saved)
Loading profile data...