Time bar (total: 13.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 6 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 7 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 8 |
| 6.3% | 6.2% | 93.6% | 0.2% | 0% | 0% | 0% | 9 |
| 9.4% | 9.4% | 90.4% | 0.2% | 0% | 0% | 0% | 10 |
| 12.7% | 12.5% | 85.8% | 0.2% | 1.6% | 0% | 0% | 11 |
| 17.7% | 17.2% | 79.9% | 0.2% | 2.7% | 0% | 0% | 12 |
Compiled 14 to 9 computations (35.7% saved)
| 2.1s | 8256× | body | 256 | valid |
| 427.0ms | 2460× | body | 256 | infinite |
| 2× | egg-herbie |
| 72× | rational.json-simplify-2 |
| 24× | rational.json-simplify-43 |
| 14× | rational.json-simplify-52 |
| 2× | swap-y-t |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 29 | 175 |
| 1 | 41 | 133 |
| 2 | 54 | 133 |
| 3 | 71 | 133 |
| 4 | 87 | 133 |
| 5 | 93 | 133 |
| 0 | 4 | 4 |
| 1 | 4 | 4 |
| 1× | unsound |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
2 |
3 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
1 |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 z x)) t) |
(*.f64 (-.f64 (*.f64 z y) (*.f64 x y)) t) |
(*.f64 (-.f64 (*.f64 t y) (*.f64 z y)) x) |
(*.f64 (-.f64 (*.f64 x z) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 x t) (*.f64 z t)) y) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 t y)) z) |
| Outputs |
|---|
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 y z)) t) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 z x)) t) |
(*.f64 t (-.f64 (*.f64 x y) (*.f64 x z))) |
(*.f64 t (*.f64 x (-.f64 y z))) |
(*.f64 x (*.f64 (-.f64 y z) t)) |
(*.f64 x (*.f64 t (-.f64 y z))) |
(*.f64 (-.f64 (*.f64 z y) (*.f64 x y)) t) |
(*.f64 t (-.f64 (*.f64 y z) (*.f64 x y))) |
(*.f64 t (*.f64 y (-.f64 z x))) |
(*.f64 y (*.f64 (-.f64 z x) t)) |
(*.f64 y (*.f64 t (-.f64 z x))) |
(*.f64 (-.f64 (*.f64 t y) (*.f64 z y)) x) |
(*.f64 x (-.f64 (*.f64 y t) (*.f64 y z))) |
(*.f64 x (*.f64 y (-.f64 t z))) |
(*.f64 (-.f64 (*.f64 x z) (*.f64 y z)) t) |
(*.f64 t (-.f64 (*.f64 x z) (*.f64 y z))) |
(*.f64 t (*.f64 z (-.f64 x y))) |
(*.f64 z (*.f64 (-.f64 x y) t)) |
(*.f64 (-.f64 x y) (*.f64 z t)) |
(*.f64 (*.f64 z t) (-.f64 x y)) |
(*.f64 (-.f64 (*.f64 x t) (*.f64 z t)) y) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 y z)) t) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 t y)) z) |
(*.f64 z (-.f64 (*.f64 x y) (*.f64 y t))) |
(*.f64 z (*.f64 y (-.f64 x t))) |
(*.f64 y (*.f64 (-.f64 x t) z)) |
(*.f64 y (*.f64 z (-.f64 x t))) |
(sort y t)
Compiled 17 to 12 computations (29.4% saved)
| 1× | egg-herbie |
| 16× | rational.json-simplify-2 |
| 6× | rational.json-simplify-43 |
| 2× | rational.json-simplify-52 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 25 |
| 1 | 13 | 19 |
| 2 | 15 | 19 |
| 3 | 18 | 19 |
| 4 | 24 | 19 |
| 5 | 25 | 19 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| Outputs |
|---|
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 y z)) t) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
Compiled 43 to 18 computations (58.1% saved)
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 2 | 3 | 5 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 4 | 6 |
| Status | Error | Program |
|---|---|---|
| ▶ | 6.5b | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| ▶ | 6.5b | (*.f64 (*.f64 y (-.f64 x z)) t) |
| ▶ | 7.6b | (*.f64 y (*.f64 (-.f64 x z) t)) |
Compiled 35 to 22 computations (37.1% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (-.f64 x z) t) |
| ✓ | 7.2b | (*.f64 y (*.f64 (-.f64 x z) t)) |
Compiled 23 to 7 computations (69.6% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | inf | (*.f64 y (*.f64 (-.f64 x z) t)) |
| 1.0ms | x | @ | inf | (*.f64 y (*.f64 (-.f64 x z) t)) |
| 1.0ms | y | @ | 0 | (*.f64 y (*.f64 (-.f64 x z) t)) |
| 0.0ms | t | @ | 0 | (*.f64 y (*.f64 (-.f64 x z) t)) |
| 0.0ms | x | @ | -inf | (*.f64 y (*.f64 (-.f64 x z) t)) |
| 1× | batch-egg-rewrite |
| 1552× | rational.json-simplify-35 |
| 1514× | exponential.json-3 |
| 1514× | rational.json-1 |
| 1514× | rational.json-2 |
| 1514× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 60 | 32 |
| 2 | 139 | 32 |
| 3 | 304 | 32 |
| 4 | 566 | 32 |
| 5 | 1369 | 32 |
| 6 | 3117 | 32 |
| 7 | 5055 | 32 |
| 8 | 6558 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (-.f64 x z) t) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 (-.f64 x z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) t) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 t (*.f64 y 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) t) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x z) t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) (*.f64 t 1/2)) (*.f64 (-.f64 x z) (*.f64 t 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x z) t) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) t) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (+.f64 t t)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 t 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) t) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x z) t) 1))))) |
| 1× | egg-herbie |
| 3076× | rational.json-simplify-35 |
| 1856× | rational.json-simplify-2 |
| 1488× | rational.json-simplify-53 |
| 1332× | rational.json-simplify-1 |
| 834× | rational.json-simplify-41 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 79 | 2300 |
| 1 | 207 | 1892 |
| 2 | 481 | 1892 |
| 3 | 1195 | 1892 |
| 4 | 3121 | 1892 |
| 5 | 4186 | 1892 |
| 6 | 4477 | 1892 |
| 7 | 4667 | 1892 |
| 8 | 4831 | 1892 |
| 9 | 4996 | 1892 |
| 10 | 6607 | 1892 |
| 11 | 7154 | 1892 |
| 12 | 7177 | 1892 |
| 13 | 7179 | 1892 |
| 14 | 7181 | 1892 |
| 15 | 7341 | 1892 |
| 16 | 7501 | 1892 |
| 17 | 7725 | 1892 |
| 18 | 7885 | 1892 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 -1 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 -1 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(+.f64 0 (*.f64 y (*.f64 (-.f64 x z) t))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(-.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) t) (+.f64 y y)) 2) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 t (*.f64 y 4))) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128) |
(pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(+.f64 (*.f64 (-.f64 x z) t) 0) |
(+.f64 0 (*.f64 (-.f64 x z) t)) |
(+.f64 (*.f64 (-.f64 x z) (*.f64 t 1/2)) (*.f64 (-.f64 x z) (*.f64 t 1/2))) |
(-.f64 (*.f64 (-.f64 x z) t) 0) |
(/.f64 (*.f64 (-.f64 x z) t) 1) |
(/.f64 (*.f64 (-.f64 x z) (+.f64 t t)) 2) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 t 4)) 4) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) t) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))))) 128) |
(pow.f64 (*.f64 (-.f64 x z) t) 1) |
| Outputs |
|---|
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 t (*.f64 z -1))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 x y)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 x y)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 x y)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 t (*.f64 z -1))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 t (*.f64 z -1))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1))) (*.f64 t (*.f64 x y))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 -1 (*.f64 t z)) |
(*.f64 t (*.f64 z -1)) |
(*.f64 t (neg.f64 z)) |
(neg.f64 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 t x) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 t z)) |
(*.f64 t (*.f64 z -1)) |
(*.f64 t (neg.f64 z)) |
(neg.f64 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 t z)) |
(*.f64 t (*.f64 z -1)) |
(*.f64 t (neg.f64 z)) |
(neg.f64 (*.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 t x)) |
(+.f64 (*.f64 t x) (*.f64 t (*.f64 z -1))) |
(*.f64 t (+.f64 x (neg.f64 z))) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(*.f64 t (-.f64 x z)) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 0 (*.f64 y (*.f64 (-.f64 x z) t))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(-.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) t) (+.f64 y y)) 2) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 t (*.f64 y 4))) 4) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(*.f64 (-.f64 x z) (*.f64 t y)) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 (-.f64 x z) t) 0) |
(*.f64 t (-.f64 x z)) |
(+.f64 0 (*.f64 (-.f64 x z) t)) |
(*.f64 t (-.f64 x z)) |
(+.f64 (*.f64 (-.f64 x z) (*.f64 t 1/2)) (*.f64 (-.f64 x z) (*.f64 t 1/2))) |
(*.f64 t (-.f64 x z)) |
(-.f64 (*.f64 (-.f64 x z) t) 0) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 (-.f64 x z) t) 1) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 (-.f64 x z) (+.f64 t t)) 2) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 t 4)) 4) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) t) 8) 8) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)) 16) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))) 32) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8)))) 64) |
(*.f64 t (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) t) 8))))) 128) |
(*.f64 t (-.f64 x z)) |
(pow.f64 (*.f64 (-.f64 x z) t) 1) |
(*.f64 t (-.f64 x z)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 y (-.f64 x z)) |
| ✓ | 6.2b | (*.f64 (*.f64 y (-.f64 x z)) t) |
Compiled 23 to 7 computations (69.6% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | -inf | (*.f64 y (-.f64 x z)) |
| 0.0ms | y | @ | inf | (*.f64 y (-.f64 x z)) |
| 0.0ms | y | @ | -inf | (*.f64 y (-.f64 x z)) |
| 0.0ms | y | @ | 0 | (*.f64 y (-.f64 x z)) |
| 0.0ms | x | @ | 0 | (*.f64 y (-.f64 x z)) |
| 1× | batch-egg-rewrite |
| 1534× | rational.json-simplify-35 |
| 1490× | exponential.json-3 |
| 1490× | rational.json-1 |
| 1490× | rational.json-2 |
| 1490× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 58 | 32 |
| 2 | 128 | 32 |
| 3 | 288 | 32 |
| 4 | 541 | 32 |
| 5 | 1322 | 32 |
| 6 | 3026 | 32 |
| 7 | 4969 | 32 |
| 8 | 6450 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 y (-.f64 x z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 (-.f64 x z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 y (+.f64 t t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (*.f64 (-.f64 x z) t) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1))))) |
| 1× | egg-herbie |
| 2932× | rational.json-simplify-35 |
| 1684× | rational.json-simplify-2 |
| 1394× | exponential.json-simplify-26 |
| 1306× | rational.json-simplify-53 |
| 1278× | rational.json-simplify-1 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 85 | 2144 |
| 1 | 219 | 1844 |
| 2 | 483 | 1736 |
| 3 | 1249 | 1736 |
| 4 | 3019 | 1736 |
| 5 | 4404 | 1736 |
| 6 | 4684 | 1736 |
| 7 | 4905 | 1736 |
| 8 | 5075 | 1736 |
| 9 | 5245 | 1736 |
| 10 | 6426 | 1736 |
| 11 | 7466 | 1736 |
| 12 | 7490 | 1736 |
| 13 | 7491 | 1736 |
| 14 | 7492 | 1736 |
| 15 | 7655 | 1736 |
| 16 | 7818 | 1736 |
| 17 | 7981 | 1736 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(+.f64 0 (*.f64 y (*.f64 (-.f64 x z) t))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(-.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y (+.f64 t t))) 2) |
(/.f64 (*.f64 y (*.f64 (*.f64 (-.f64 x z) t) 4)) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128) |
(pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(+.f64 (*.f64 y (-.f64 x z)) 0) |
(+.f64 0 (*.f64 y (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(-.f64 (*.f64 y (-.f64 x z)) 0) |
(/.f64 (*.f64 y (-.f64 x z)) 1) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128) |
(pow.f64 (*.f64 y (-.f64 x z)) 1) |
| Outputs |
|---|
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 (*.f64 t z) -1)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 (*.f64 t z) -1)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 y (*.f64 (*.f64 t z) -1)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1)) (*.f64 t (*.f64 y x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 (*.f64 y t) (+.f64 x (neg.f64 z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y z)) |
(*.f64 y (*.f64 z -1)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 y z)) |
(*.f64 y (*.f64 z -1)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 y z)) |
(*.f64 y (*.f64 z -1)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 z -1)) (*.f64 y x)) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 0 (*.f64 y (*.f64 (-.f64 x z) t))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(-.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 0) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y (+.f64 t t))) 2) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 y (*.f64 (*.f64 (-.f64 x z) t) 4)) 4) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8) 8) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)) 16) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))) 32) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8)))) 64) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 8))))) 128) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(pow.f64 (*.f64 y (*.f64 (-.f64 x z) t)) 1) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (-.f64 x z)) 0) |
(*.f64 y (-.f64 x z)) |
(+.f64 0 (*.f64 y (-.f64 x z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(*.f64 y (-.f64 x z)) |
(-.f64 (*.f64 y (-.f64 x z)) 0) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (-.f64 x z)) 1) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128) |
(*.f64 y (-.f64 x z)) |
(pow.f64 (*.f64 y (-.f64 x z)) 1) |
(*.f64 y (-.f64 x z)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (-.f64 (*.f64 x y) (*.f64 z y)) |
| ✓ | 6.2b | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
Compiled 30 to 8 computations (73.3% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 6.0ms | y | @ | 0 | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 1.0ms | y | @ | inf | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 1.0ms | y | @ | -inf | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 1.0ms | t | @ | 0 | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 0.0ms | x | @ | 0 | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 1× | batch-egg-rewrite |
| 1842× | rational.json-simplify-35 |
| 1806× | rational.json-1 |
| 1208× | exponential.json-3 |
| 1208× | rational.json-2 |
| 1208× | rational.json-4 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 44 |
| 1 | 65 | 32 |
| 2 | 137 | 32 |
| 3 | 307 | 32 |
| 4 | 600 | 32 |
| 5 | 1461 | 32 |
| 6 | 3434 | 32 |
| 7 | 5791 | 32 |
| 8 | 7781 | 32 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
(-.f64 (*.f64 x y) (*.f64 z y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 t (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2))) (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) (+.f64 t t)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 t 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (*.f64 y (-.f64 x z)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y z)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 y (-.f64 x z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y (-.f64 x z)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (-.f64 (*.f64 x 1/2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y z)) (+.f64 (*.f64 x y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 2 (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x y) 1) (-.f64 -1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 2 (*.f64 y (-.f64 z x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 y (*.f64 (-.f64 x z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 y (-.f64 x z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (/.f64 (*.f64 x y) 4) (/.f64 (*.f64 y z) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 x z)) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 2 (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 2 (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) 1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 y (*.f64 (-.f64 x z) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x))))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x))))))) |
| 1× | egg-herbie |
| 1804× | rational.json-simplify-35 |
| 1262× | rational.json-simplify-51 |
| 1222× | rational.json-simplify-2 |
| 954× | rational.json-simplify-1 |
| 864× | rational.json-simplify-53 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 159 | 4016 |
| 1 | 376 | 3096 |
| 2 | 879 | 2790 |
| 3 | 2147 | 2266 |
| 4 | 5207 | 2250 |
| 5 | 6022 | 2250 |
| 6 | 6728 | 2250 |
| 7 | 7141 | 2250 |
| 8 | 7410 | 2250 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0) |
(+.f64 0 (*.f64 y (*.f64 t (-.f64 x z)))) |
(+.f64 (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2))) (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2)))) |
(-.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0) |
(/.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) (+.f64 t t)) 2) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 t 4)) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) 64) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))))) 128) |
(pow.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1) |
(+.f64 (*.f64 x y) (neg.f64 (*.f64 y z))) |
(+.f64 (*.f64 y (-.f64 x z)) 0) |
(+.f64 0 (*.f64 y (-.f64 x z))) |
(+.f64 1 (+.f64 (*.f64 y (-.f64 x z)) -1)) |
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 x y)) |
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x z)) 1)) |
(+.f64 (+.f64 (*.f64 y (-.f64 x z)) 1) -1) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(+.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (-.f64 (*.f64 x 1/2) z))) |
(+.f64 (-.f64 1 (*.f64 y z)) (+.f64 (*.f64 x y) -1)) |
(+.f64 -2 (-.f64 2 (*.f64 y (-.f64 z x)))) |
(+.f64 (+.f64 (*.f64 x y) 1) (-.f64 -1 (*.f64 y z))) |
(+.f64 (-.f64 2 (*.f64 y (-.f64 z x))) -2) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y (-.f64 x z)) 1) |
(*.f64 1 (*.f64 y (-.f64 x z))) |
(*.f64 2 (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(*.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 1/2) |
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2)) |
(*.f64 (*.f64 y (-.f64 z x)) -1) |
(*.f64 (-.f64 x z) y) |
(*.f64 4 (/.f64 (*.f64 y (-.f64 x z)) 4)) |
(*.f64 4 (-.f64 (/.f64 (*.f64 x y) 4) (/.f64 (*.f64 y z) 4))) |
(*.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 1/4) |
(*.f64 (-.f64 z x) (neg.f64 y)) |
(*.f64 -1 (*.f64 y (-.f64 z x))) |
(*.f64 (*.f64 2 (-.f64 x z)) (*.f64 y 1/2)) |
(*.f64 1/2 (*.f64 y (*.f64 2 (-.f64 x z)))) |
(*.f64 (*.f64 y 1/2) (*.f64 2 (-.f64 x z))) |
(*.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 2) |
(*.f64 (*.f64 (-.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 1/4 (*.f64 y (*.f64 (-.f64 x z) 4))) |
(*.f64 (neg.f64 y) (-.f64 z x)) |
(*.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) 4) |
(/.f64 (*.f64 y (-.f64 x z)) 1) |
(/.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 2) |
(/.f64 (*.f64 y (-.f64 z x)) -1) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4) |
(/.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8) |
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x)))) -8) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x))))) -16) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128) |
(pow.f64 (*.f64 y (-.f64 x z)) 1) |
(neg.f64 (*.f64 y (-.f64 z x))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 t (*.f64 y z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) (*.f64 t y))) |
(*.f64 (*.f64 t (*.f64 -1 (-.f64 x z))) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t (neg.f64 (-.f64 x z))))) |
(*.f64 y (neg.f64 (*.f64 t (-.f64 z x)))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) (*.f64 t y))) |
(*.f64 (*.f64 t (*.f64 -1 (-.f64 x z))) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t (neg.f64 (-.f64 x z))))) |
(*.f64 y (neg.f64 (*.f64 t (-.f64 z x)))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) (*.f64 t y))) |
(*.f64 (*.f64 t (*.f64 -1 (-.f64 x z))) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t (neg.f64 (-.f64 x z))))) |
(*.f64 y (neg.f64 (*.f64 t (-.f64 z x)))) |
(*.f64 -1 (*.f64 y (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) t))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 x) (*.f64 -1 z)) (*.f64 t y))) |
(*.f64 (*.f64 t (*.f64 -1 (-.f64 x z))) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t (neg.f64 (-.f64 x z))))) |
(*.f64 y (neg.f64 (*.f64 t (-.f64 z x)))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 t (*.f64 y z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 t (*.f64 y z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 (-.f64 (*.f64 y x) (*.f64 y z)) t) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 y x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 0 (*.f64 y (*.f64 t (-.f64 x z)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2))) (*.f64 t (*.f64 y (*.f64 (-.f64 x z) 1/2)))) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(-.f64 (*.f64 y (*.f64 t (-.f64 x z))) 0) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) (+.f64 t t)) 2) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 t 4)) 4) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8) 8) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)) 16) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))) 32) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) 64) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (-.f64 x z))) 8))))) 128) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(pow.f64 (*.f64 y (*.f64 t (-.f64 x z))) 1) |
(+.f64 (*.f64 -1 (*.f64 t (*.f64 y z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 t (*.f64 y (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 x y) (neg.f64 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y (-.f64 x z)) 0) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 0 (*.f64 y (-.f64 x z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 1 (+.f64 (*.f64 y (-.f64 x z)) -1)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 x y)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x z)) 1)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (+.f64 (*.f64 y (-.f64 x z)) 1) -1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (-.f64 (*.f64 x 1/2) z))) |
(+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (-.f64 (*.f64 x 1/2) z))) |
(*.f64 y (+.f64 (-.f64 (*.f64 x 1/2) z) (*.f64 x 1/2))) |
(*.f64 y (+.f64 (*.f64 x 1/2) (-.f64 (*.f64 x 1/2) z))) |
(+.f64 (-.f64 1 (*.f64 y z)) (+.f64 (*.f64 x y) -1)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 -2 (-.f64 2 (*.f64 y (-.f64 z x)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (+.f64 (*.f64 x y) 1) (-.f64 -1 (*.f64 y z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(+.f64 (-.f64 2 (*.f64 y (-.f64 z x))) -2) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 (*.f64 y (-.f64 x z)) 1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 1 (*.f64 y (-.f64 x z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 2 (*.f64 y (*.f64 (-.f64 x z) 1/2))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 1/2) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y (-.f64 z x)) -1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (-.f64 x z) y) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 4 (/.f64 (*.f64 y (-.f64 x z)) 4)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 4 (-.f64 (/.f64 (*.f64 x y) 4) (/.f64 (*.f64 y z) 4))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 1/4) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (-.f64 z x) (neg.f64 y)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 -1 (*.f64 y (-.f64 z x))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 2 (-.f64 x z)) (*.f64 y 1/2)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 1/2 (*.f64 y (*.f64 2 (-.f64 x z)))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y 1/2) (*.f64 2 (-.f64 x z))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 2) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (*.f64 (-.f64 x z) 1/2) (+.f64 y y)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 1/4 (*.f64 y (*.f64 (-.f64 x z) 4))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (neg.f64 y) (-.f64 z x)) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(*.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) 4) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (-.f64 x z)) 1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (*.f64 2 (-.f64 x z))) 2) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (-.f64 z x)) -1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 8) 8) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)) 16) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))) 32) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x)))) -8) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) 64) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 4 (-.f64 z x))))) -16) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 8))))) 128) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(pow.f64 (*.f64 y (-.f64 x z)) 1) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
(neg.f64 (*.f64 y (-.f64 z x))) |
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) |
(*.f64 y (+.f64 x (neg.f64 z))) |
(*.f64 y (-.f64 x z)) |
Compiled 2018 to 837 computations (58.5% saved)
8 alts after pruning (5 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 184 | 5 | 189 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 184 | 8 | 192 |
| Status | Error | Program |
|---|---|---|
| ✓ | 6.5b | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| ▶ | 6.1b | (*.f64 (-.f64 x z) (*.f64 y t)) |
| ✓ | 6.5b | (*.f64 (*.f64 y (-.f64 x z)) t) |
| ▶ | 32.2b | (*.f64 (*.f64 y (neg.f64 z)) t) |
| ▶ | 31.7b | (*.f64 (*.f64 y x) t) |
| ✓ | 7.6b | (*.f64 y (*.f64 (-.f64 x z) t)) |
| ▶ | 32.1b | (*.f64 y (*.f64 t (neg.f64 z))) |
| ▶ | 32.9b | (*.f64 y (*.f64 t x)) |
Compiled 133 to 88 computations (33.8% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.0b | (*.f64 (-.f64 x z) (*.f64 y t)) |
Compiled 21 to 7 computations (66.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | inf | (*.f64 (-.f64 x z) (*.f64 y t)) |
| 0.0ms | x | @ | 0 | (*.f64 (-.f64 x z) (*.f64 y t)) |
| 0.0ms | x | @ | -inf | (*.f64 (-.f64 x z) (*.f64 y t)) |
| 0.0ms | x | @ | inf | (*.f64 (-.f64 x z) (*.f64 y t)) |
| 0.0ms | z | @ | -inf | (*.f64 (-.f64 x z) (*.f64 y t)) |
| 1× | batch-egg-rewrite |
| 1554× | rational.json-simplify-35 |
| 1518× | exponential.json-3 |
| 1518× | rational.json-1 |
| 1518× | rational.json-2 |
| 1518× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 19 |
| 1 | 60 | 19 |
| 2 | 139 | 19 |
| 3 | 304 | 19 |
| 4 | 566 | 19 |
| 5 | 1372 | 19 |
| 6 | 3123 | 19 |
| 7 | 5059 | 19 |
| 8 | 6574 | 19 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 x z) (*.f64 y t)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x z) (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (*.f64 (-.f64 z x) (*.f64 y t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 y (*.f64 t 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1))))) |
| 1× | egg-herbie |
| 2826× | rational.json-simplify-53 |
| 2064× | rational.json-simplify-35 |
| 1906× | exponential.json-simplify-26 |
| 1264× | rational.json-simplify-43 |
| 1076× | rational.json-simplify-49 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 57 | 1465 |
| 1 | 149 | 1315 |
| 2 | 342 | 1315 |
| 3 | 882 | 1207 |
| 4 | 3221 | 1207 |
| 5 | 4293 | 1207 |
| 6 | 4837 | 1207 |
| 7 | 5093 | 1207 |
| 8 | 5312 | 1207 |
| 9 | 5523 | 1207 |
| 10 | 6954 | 1207 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(+.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0) |
(+.f64 0 (*.f64 (-.f64 x z) (*.f64 y t))) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(-.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1) |
(/.f64 (*.f64 -2 (*.f64 (-.f64 z x) (*.f64 y t))) 2) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y (*.f64 t 4))) 4) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))))) 128) |
(pow.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 z (*.f64 y t))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 z (*.f64 y t))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 z (*.f64 y t))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(+.f64 (*.f64 y (*.f64 t x)) (*.f64 -1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 -1 (*.f64 y (*.f64 t z))) (*.f64 y (*.f64 t x))) |
(*.f64 y (+.f64 (*.f64 t x) (neg.f64 (*.f64 t z)))) |
(*.f64 y (*.f64 t (+.f64 x (neg.f64 z)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(+.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(+.f64 0 (*.f64 (-.f64 x z) (*.f64 y t))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(+.f64 (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2))) (*.f64 y (*.f64 (-.f64 x z) (*.f64 t 1/2)))) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(-.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 0) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 -2 (*.f64 (-.f64 z x) (*.f64 y t))) 2) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 (-.f64 x z) (*.f64 y (*.f64 t 4))) 4) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8) 8) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)) 16) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))) 32) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8)))) 64) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 8))))) 128) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(pow.f64 (*.f64 (-.f64 x z) (*.f64 y t)) 1) |
(*.f64 y (*.f64 t (-.f64 x z))) |
(*.f64 t (*.f64 y (-.f64 x z))) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.8b | (*.f64 y (*.f64 t x)) |
Compiled 15 to 6 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | t | @ | -inf | (*.f64 y (*.f64 t x)) |
| 0.0ms | y | @ | 0 | (*.f64 y (*.f64 t x)) |
| 0.0ms | y | @ | inf | (*.f64 y (*.f64 t x)) |
| 0.0ms | x | @ | inf | (*.f64 y (*.f64 t x)) |
| 0.0ms | x | @ | 0 | (*.f64 y (*.f64 t x)) |
| 1× | batch-egg-rewrite |
| 2168× | rational.json-simplify-2 |
| 1512× | rational.json-simplify-1 |
| 1370× | exponential.json-3 |
| 1370× | rational.json-1 |
| 1370× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 117 | 13 |
| 3 | 250 | 13 |
| 4 | 452 | 13 |
| 5 | 1058 | 13 |
| 6 | 2170 | 13 |
| 7 | 3361 | 13 |
| 8 | 3993 | 13 |
| 9 | 4949 | 13 |
| 10 | 5542 | 13 |
| 11 | 5542 | 13 |
| 12 | 6896 | 13 |
| 13 | 7986 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 t x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 t x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (*.f64 t x) 1/2)) (*.f64 y (*.f64 (*.f64 t x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 t x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (+.f64 x x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (*.f64 y (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 x 8))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 t x)) 1))))) |
| 1× | egg-herbie |
| 4300× | rational.json-simplify-53 |
| 3572× | rational.json-simplify-35 |
| 2382× | rational.json-simplify-2 |
| 1568× | exponential.json-simplify-26 |
| 696× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 48 | 182 |
| 1 | 135 | 182 |
| 2 | 286 | 182 |
| 3 | 717 | 182 |
| 4 | 1978 | 182 |
| 5 | 3612 | 182 |
| 6 | 4108 | 182 |
| 7 | 4441 | 182 |
| 8 | 4639 | 182 |
| 9 | 4831 | 182 |
| 10 | 5695 | 182 |
| 11 | 6450 | 182 |
| 12 | 6450 | 182 |
| 13 | 6450 | 182 |
| 14 | 6641 | 182 |
| 15 | 6832 | 182 |
| 16 | 7023 | 182 |
| 17 | 7214 | 182 |
| 18 | 7405 | 182 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y (*.f64 t x)) 0) |
(+.f64 0 (*.f64 y (*.f64 t x))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t x) 1/2)) (*.f64 y (*.f64 (*.f64 t x) 1/2))) |
(-.f64 (*.f64 y (*.f64 t x)) 0) |
(/.f64 (*.f64 y (*.f64 t x)) 1) |
(/.f64 (*.f64 y (*.f64 t (+.f64 x x))) 2) |
(/.f64 (*.f64 t (*.f64 y (*.f64 x 4))) 4) |
(/.f64 (*.f64 y (*.f64 t (*.f64 x 8))) 8) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))))) 256) |
(pow.f64 (*.f64 y (*.f64 t x)) 1) |
| Outputs |
|---|
(+.f64 (*.f64 y (*.f64 t x)) 0) |
(*.f64 y (*.f64 t x)) |
(+.f64 0 (*.f64 y (*.f64 t x))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 y (*.f64 (*.f64 t x) 1/2)) (*.f64 y (*.f64 (*.f64 t x) 1/2))) |
(*.f64 y (*.f64 t x)) |
(-.f64 (*.f64 y (*.f64 t x)) 0) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 t x)) 1) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 t (+.f64 x x))) 2) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 t (*.f64 y (*.f64 x 4))) 4) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 t (*.f64 x 8))) 8) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))) 16) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))) 32) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))) 64) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8))))))) 128) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y (*.f64 t (*.f64 x 8)))))))) 256) |
(*.f64 y (*.f64 t x)) |
(pow.f64 (*.f64 y (*.f64 t x)) 1) |
(*.f64 y (*.f64 t x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.2b | (*.f64 (*.f64 y x) t) |
Compiled 15 to 6 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | t | @ | -inf | (*.f64 (*.f64 y x) t) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 y x) t) |
| 0.0ms | y | @ | 0 | (*.f64 (*.f64 y x) t) |
| 0.0ms | y | @ | -inf | (*.f64 (*.f64 y x) t) |
| 0.0ms | x | @ | -inf | (*.f64 (*.f64 y x) t) |
| 1× | batch-egg-rewrite |
| 2832× | rational.json-simplify-35 |
| 2094× | rational.json-simplify-2 |
| 1180× | exponential.json-3 |
| 1180× | rational.json-1 |
| 1180× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 46 | 13 |
| 2 | 106 | 13 |
| 3 | 234 | 13 |
| 4 | 427 | 13 |
| 5 | 1014 | 13 |
| 6 | 2298 | 13 |
| 7 | 3697 | 13 |
| 8 | 4269 | 13 |
| 9 | 5077 | 13 |
| 10 | 5562 | 13 |
| 11 | 5562 | 13 |
| 12 | 6053 | 13 |
| 13 | 6053 | 13 |
| 14 | 6669 | 13 |
| 15 | 7610 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 y x) t) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 x t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 x t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y t) (*.f64 x 1/2)) (*.f64 (*.f64 y t) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 x t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x (+.f64 t t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 x t)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 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 (*.f64 x t)) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 x t)) 1))))) |
| 1× | egg-herbie |
| 2928× | rational.json-simplify-2 |
| 2220× | rational.json-simplify-35 |
| 1628× | exponential.json-simplify-26 |
| 1216× | rational.json-simplify-43 |
| 1092× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 55 | 676 |
| 1 | 145 | 676 |
| 2 | 312 | 676 |
| 3 | 794 | 676 |
| 4 | 3169 | 676 |
| 5 | 4365 | 676 |
| 6 | 5017 | 676 |
| 7 | 5254 | 676 |
| 8 | 5429 | 676 |
| 9 | 5594 | 676 |
| 10 | 7909 | 676 |
| 11 | 7909 | 676 |
| 12 | 7912 | 676 |
| 13 | 7912 | 676 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 y (*.f64 x t)) 0) |
(+.f64 0 (*.f64 y (*.f64 x t))) |
(+.f64 (*.f64 (*.f64 y t) (*.f64 x 1/2)) (*.f64 (*.f64 y t) (*.f64 x 1/2))) |
(-.f64 (*.f64 y (*.f64 x t)) 0) |
(/.f64 (*.f64 y (*.f64 x t)) 1) |
(/.f64 (*.f64 y (*.f64 x (+.f64 t t))) 2) |
(/.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 x t)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))))) 512) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))))))) 1024) |
(pow.f64 (*.f64 y (*.f64 x t)) 1) |
| Outputs |
|---|
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 y (*.f64 x t)) 0) |
(*.f64 y (*.f64 t x)) |
(+.f64 0 (*.f64 y (*.f64 x t))) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 (*.f64 y t) (*.f64 x 1/2)) (*.f64 (*.f64 y t) (*.f64 x 1/2))) |
(*.f64 y (*.f64 t x)) |
(-.f64 (*.f64 y (*.f64 x t)) 0) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 x t)) 1) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 x (+.f64 t t))) 2) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 (*.f64 y (*.f64 x t)) 8) 8) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)) 16) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))) 32) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))) 64) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))) 128) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))))) 256) |
(*.f64 y (*.f64 t x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))))) 512) |
(*.f64 y (*.f64 t x)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 x t)) 8)))))))) 1024) |
(*.f64 y (*.f64 t x)) |
(pow.f64 (*.f64 y (*.f64 x t)) 1) |
(*.f64 y (*.f64 t x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.2b | (*.f64 y (*.f64 t (neg.f64 z))) |
Compiled 19 to 7 computations (63.2% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | 0 | (*.f64 y (*.f64 t (neg.f64 z))) |
| 1.0ms | t | @ | 0 | (*.f64 y (*.f64 t (neg.f64 z))) |
| 0.0ms | t | @ | inf | (*.f64 y (*.f64 t (neg.f64 z))) |
| 0.0ms | z | @ | 0 | (*.f64 y (*.f64 t (neg.f64 z))) |
| 0.0ms | y | @ | inf | (*.f64 y (*.f64 t (neg.f64 z))) |
| 1× | batch-egg-rewrite |
| 1712× | rational.json-1 |
| 1712× | rational.json-2 |
| 1702× | rational.json-simplify-35 |
| 1206× | exponential.json-3 |
| 1206× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 17 |
| 1 | 64 | 17 |
| 2 | 156 | 17 |
| 3 | 348 | 17 |
| 4 | 714 | 17 |
| 5 | 1882 | 17 |
| 6 | 4228 | 17 |
| 7 | 6362 | 17 |
| 8 | 7736 | 17 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t (neg.f64 z))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 t (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (*.f64 t z) -1/2)) (*.f64 y (*.f64 (*.f64 t z) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (*.f64 y (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 t z))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (*.f64 t z))))))) |
| 1× | egg-herbie |
| 2348× | rational.json-simplify-35 |
| 1940× | exponential.json-simplify-26 |
| 1418× | rational.json-simplify-49 |
| 1208× | rational.json-simplify-53 |
| 1044× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 56 | 918 |
| 1 | 145 | 918 |
| 2 | 336 | 918 |
| 3 | 841 | 918 |
| 4 | 2981 | 918 |
| 5 | 4274 | 918 |
| 6 | 5357 | 918 |
| 7 | 5947 | 918 |
| 8 | 6072 | 918 |
| 9 | 6176 | 918 |
| 10 | 7579 | 918 |
| 11 | 7627 | 918 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0) |
(+.f64 0 (*.f64 t (*.f64 y (neg.f64 z)))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1/2)) (*.f64 y (*.f64 (*.f64 t z) -1/2))) |
(-.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0) |
(-.f64 0 (*.f64 y (*.f64 t z))) |
(/.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1) |
(/.f64 (*.f64 -2 (*.f64 y (*.f64 t z))) 2) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(/.f64 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8) 8) |
(/.f64 (*.f64 y (*.f64 t z)) -1) |
(/.f64 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t z))) -2) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) 64) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))))) 128) |
(pow.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 0 (*.f64 t (*.f64 y (neg.f64 z)))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z)))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 (*.f64 t z) -1/2)) (*.f64 y (*.f64 (*.f64 t z) -1/2))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 (*.f64 t (*.f64 y (neg.f64 z))) 0) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 0 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 -2 (*.f64 y (*.f64 t z))) 2) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8) 8) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t z)) -1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)) 16) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t z))) -2) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))) 32) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) 64) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 t (*.f64 y (neg.f64 z))) 8))))) 128) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(pow.f64 (*.f64 t (*.f64 y (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.9b | (*.f64 (*.f64 y (neg.f64 z)) t) |
Compiled 19 to 7 computations (63.2% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | inf | (*.f64 (*.f64 y (neg.f64 z)) t) |
| 0.0ms | y | @ | 0 | (*.f64 (*.f64 y (neg.f64 z)) t) |
| 0.0ms | y | @ | -inf | (*.f64 (*.f64 y (neg.f64 z)) t) |
| 0.0ms | z | @ | inf | (*.f64 (*.f64 y (neg.f64 z)) t) |
| 0.0ms | z | @ | -inf | (*.f64 (*.f64 y (neg.f64 z)) t) |
| 1× | batch-egg-rewrite |
| 1644× | rational.json-simplify-35 |
| 1618× | rational.json-1 |
| 1618× | rational.json-2 |
| 1618× | rational.json-3 |
| 1138× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 17 |
| 1 | 62 | 17 |
| 2 | 145 | 17 |
| 3 | 327 | 17 |
| 4 | 669 | 17 |
| 5 | 1763 | 17 |
| 6 | 3944 | 17 |
| 7 | 5989 | 17 |
| 8 | 7316 | 17 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 y (neg.f64 z)) t) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 (neg.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t (*.f64 z (/.f64 y -2))) (*.f64 t (*.f64 z (/.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 z t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 t t) (*.f64 y z)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (*.f64 z t))))))) |
| 1× | egg-herbie |
| 2662× | rational.json-simplify-35 |
| 2350× | rational.json-simplify-2 |
| 1322× | rational.json-simplify-53 |
| 1228× | rational.json-simplify-1 |
| 860× | exponential.json-simplify-26 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 62 | 918 |
| 1 | 163 | 918 |
| 2 | 362 | 918 |
| 3 | 1051 | 918 |
| 4 | 2633 | 918 |
| 5 | 4250 | 918 |
| 6 | 5384 | 918 |
| 7 | 6094 | 918 |
| 8 | 6246 | 918 |
| 9 | 6344 | 918 |
| 10 | 6414 | 918 |
| 11 | 7096 | 918 |
| 12 | 7199 | 918 |
| 13 | 7735 | 918 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0) |
(+.f64 0 (*.f64 y (*.f64 (neg.f64 z) t))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 z t)))) |
(+.f64 (*.f64 t (*.f64 z (/.f64 y -2))) (*.f64 t (*.f64 z (/.f64 y -2)))) |
(-.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0) |
(-.f64 0 (*.f64 y (*.f64 z t))) |
(/.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(/.f64 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8) 8) |
(/.f64 (*.f64 y (*.f64 z t)) -1) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)) 16) |
(/.f64 (*.f64 (+.f64 t t) (*.f64 y z)) -2) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) 64) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))))) 128) |
(pow.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1) |
(neg.f64 (*.f64 y (*.f64 z t))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 0 (*.f64 y (*.f64 (neg.f64 z) t))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 z t)))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 t (*.f64 z (/.f64 y -2))) (*.f64 t (*.f64 z (/.f64 y -2)))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 0) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 0 (*.f64 y (*.f64 z t))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8) 8) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 z t)) -1) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)) 16) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 (+.f64 t t) (*.f64 y z)) -2) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))) 32) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) 64) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 8))))) 128) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(pow.f64 (*.f64 y (*.f64 (neg.f64 z) t)) 1) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 z t))) |
(neg.f64 (*.f64 t (*.f64 y z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
Compiled 1102 to 527 computations (52.2% saved)
10 alts after pruning (2 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 104 | 2 | 106 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 7 | 7 |
| Total | 104 | 10 | 114 |
| Status | Error | Program |
|---|---|---|
| ✓ | 6.5b | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| ✓ | 6.1b | (*.f64 (-.f64 x z) (*.f64 y t)) |
| ✓ | 6.5b | (*.f64 (*.f64 y (-.f64 x z)) t) |
| ✓ | 32.2b | (*.f64 (*.f64 y (neg.f64 z)) t) |
| ✓ | 31.7b | (*.f64 (*.f64 y x) t) |
| ▶ | 32.3b | (*.f64 (*.f64 y t) (neg.f64 z)) |
| ✓ | 7.6b | (*.f64 y (*.f64 (-.f64 x z) t)) |
| ✓ | 32.1b | (*.f64 y (*.f64 t (neg.f64 z))) |
| ✓ | 32.9b | (*.f64 y (*.f64 t x)) |
| ▶ | 31.2b | (*.f64 x (*.f64 y t)) |
Compiled 103 to 68 computations (34% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 3.9b | (*.f64 x (*.f64 y t)) |
Compiled 15 to 6 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (*.f64 x (*.f64 y t)) |
| 0.0ms | t | @ | -inf | (*.f64 x (*.f64 y t)) |
| 0.0ms | x | @ | inf | (*.f64 x (*.f64 y t)) |
| 0.0ms | y | @ | -inf | (*.f64 x (*.f64 y t)) |
| 0.0ms | x | @ | -inf | (*.f64 x (*.f64 y t)) |
| 1× | batch-egg-rewrite |
| 2168× | rational.json-simplify-2 |
| 1512× | rational.json-simplify-1 |
| 1370× | exponential.json-3 |
| 1370× | rational.json-1 |
| 1370× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 117 | 13 |
| 3 | 250 | 13 |
| 4 | 452 | 13 |
| 5 | 1058 | 13 |
| 6 | 2170 | 13 |
| 7 | 3361 | 13 |
| 8 | 3993 | 13 |
| 9 | 4949 | 13 |
| 10 | 5542 | 13 |
| 11 | 5542 | 13 |
| 12 | 6896 | 13 |
| 13 | 7986 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (*.f64 y t) 1/2)) (*.f64 x (*.f64 (*.f64 y t) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 y t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y (+.f64 t t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y (*.f64 t 8))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 y t)) 1))))) |
| 1× | egg-herbie |
| 4324× | rational.json-simplify-53 |
| 3824× | rational.json-simplify-35 |
| 2442× | rational.json-simplify-2 |
| 1568× | exponential.json-simplify-26 |
| 682× | rational.json-simplify-43 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 50 | 650 |
| 1 | 139 | 650 |
| 2 | 292 | 650 |
| 3 | 736 | 650 |
| 4 | 1988 | 650 |
| 5 | 3653 | 650 |
| 6 | 4149 | 650 |
| 7 | 4512 | 650 |
| 8 | 4729 | 650 |
| 9 | 4940 | 650 |
| 10 | 5829 | 650 |
| 11 | 6577 | 650 |
| 12 | 6577 | 650 |
| 13 | 6577 | 650 |
| 14 | 6787 | 650 |
| 15 | 6997 | 650 |
| 16 | 7207 | 650 |
| 17 | 7417 | 650 |
| 18 | 7627 | 650 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t x)) |
(+.f64 (*.f64 x (*.f64 y t)) 0) |
(+.f64 0 (*.f64 x (*.f64 y t))) |
(+.f64 (*.f64 x (*.f64 (*.f64 y t) 1/2)) (*.f64 x (*.f64 (*.f64 y t) 1/2))) |
(-.f64 (*.f64 x (*.f64 y t)) 0) |
(/.f64 (*.f64 x (*.f64 y t)) 1) |
(/.f64 (*.f64 x (*.f64 y (+.f64 t t))) 2) |
(/.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4) |
(/.f64 (*.f64 x (*.f64 y (*.f64 t 8))) 8) |
(/.f64 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))))) 256) |
(pow.f64 (*.f64 x (*.f64 y t)) 1) |
| Outputs |
|---|
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 x (*.f64 y t)) 0) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 0 (*.f64 x (*.f64 y t))) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(+.f64 (*.f64 x (*.f64 (*.f64 y t) 1/2)) (*.f64 x (*.f64 (*.f64 y t) 1/2))) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(-.f64 (*.f64 x (*.f64 y t)) 0) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 x (*.f64 y t)) 1) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 x (*.f64 y (+.f64 t t))) 2) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 y (*.f64 x (*.f64 t 4))) 4) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 x (*.f64 y (*.f64 t 8))) 8) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))) 16) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))) 32) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))) 64) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8))))))) 128) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 y (*.f64 t 8)))))))) 256) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
(pow.f64 (*.f64 x (*.f64 y t)) 1) |
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
(*.f64 t (*.f64 y x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.3b | (*.f64 (*.f64 y t) (neg.f64 z)) |
Compiled 18 to 7 computations (61.1% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (*.f64 (*.f64 y t) (neg.f64 z)) |
| 0.0ms | y | @ | inf | (*.f64 (*.f64 y t) (neg.f64 z)) |
| 0.0ms | y | @ | -inf | (*.f64 (*.f64 y t) (neg.f64 z)) |
| 0.0ms | t | @ | -inf | (*.f64 (*.f64 y t) (neg.f64 z)) |
| 0.0ms | z | @ | -inf | (*.f64 (*.f64 y t) (neg.f64 z)) |
| 1× | batch-egg-rewrite |
| 1742× | rational.json-simplify-35 |
| 1694× | rational.json-1 |
| 1694× | rational.json-2 |
| 1194× | exponential.json-3 |
| 1194× | rational.json-4 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 17 |
| 1 | 62 | 17 |
| 2 | 145 | 17 |
| 3 | 337 | 17 |
| 4 | 715 | 17 |
| 5 | 1843 | 17 |
| 6 | 4081 | 17 |
| 7 | 6219 | 17 |
| 8 | 7673 | 17 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 y t) (neg.f64 z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 t (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 t (*.f64 z -1/2))) (*.f64 y (*.f64 t (*.f64 z -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y (*.f64 t z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 1 (*.f64 y (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 t (+.f64 z z))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (*.f64 t (+.f64 z z)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (*.f64 t z))))))) |
| 1× | egg-herbie |
| 2542× | rational.json-simplify-35 |
| 2396× | rational.json-simplify-2 |
| 1732× | rational.json-simplify-53 |
| 1134× | rational.json-simplify-1 |
| 780× | exponential.json-simplify-26 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 65 | 969 |
| 1 | 173 | 969 |
| 2 | 385 | 969 |
| 3 | 937 | 969 |
| 4 | 2474 | 969 |
| 5 | 4096 | 969 |
| 6 | 5436 | 969 |
| 7 | 5895 | 969 |
| 8 | 6194 | 969 |
| 9 | 6280 | 969 |
| 10 | 6342 | 969 |
| 11 | 7155 | 969 |
| 12 | 7556 | 969 |
| 13 | 7838 | 969 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0) |
(+.f64 0 (*.f64 y (*.f64 t (neg.f64 z)))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z)))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1/2))) (*.f64 y (*.f64 t (*.f64 z -1/2)))) |
(+.f64 (-.f64 1 (*.f64 y (*.f64 t z))) -1) |
(-.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0) |
(-.f64 0 (*.f64 y (*.f64 t z))) |
(-.f64 (-.f64 1 (*.f64 y (*.f64 t z))) 1) |
(/.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(/.f64 (*.f64 y (*.f64 t z)) -1) |
(/.f64 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8) 8) |
(/.f64 (*.f64 y (*.f64 t (+.f64 z z))) -2) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t (+.f64 z z)))) -4) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) 64) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))))) 128) |
(pow.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
| Outputs |
|---|
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(*.f64 -1 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 0 (*.f64 y (*.f64 t (neg.f64 z)))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 -1 (-.f64 1 (*.f64 y (*.f64 t z)))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y (*.f64 t (*.f64 z -1/2))) (*.f64 y (*.f64 t (*.f64 z -1/2)))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(+.f64 (-.f64 1 (*.f64 y (*.f64 t z))) -1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 (*.f64 y (*.f64 t (neg.f64 z))) 0) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 0 (*.f64 y (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(-.f64 (-.f64 1 (*.f64 y (*.f64 t z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -2))) 2) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (*.f64 z -4))) 4) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t z)) -1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8) 8) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 y (*.f64 t (+.f64 z z))) -2) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)) 16) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 y (*.f64 t (+.f64 z z)))) -4) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))) 32) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) 64) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y (*.f64 t (neg.f64 z))) 8))))) 128) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(pow.f64 (*.f64 y (*.f64 t (neg.f64 z))) 1) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
(neg.f64 (*.f64 y (*.f64 t z))) |
(*.f64 (*.f64 t z) (neg.f64 y)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (neg.f64 (*.f64 t z))) |
Compiled 419 to 219 computations (47.7% saved)
10 alts after pruning (0 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 42 | 0 | 42 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 9 | 9 |
| Total | 42 | 10 | 52 |
| Status | Error | Program |
|---|---|---|
| ✓ | 6.5b | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| ✓ | 6.1b | (*.f64 (-.f64 x z) (*.f64 y t)) |
| ✓ | 6.5b | (*.f64 (*.f64 y (-.f64 x z)) t) |
| ✓ | 32.2b | (*.f64 (*.f64 y (neg.f64 z)) t) |
| ✓ | 31.7b | (*.f64 (*.f64 y x) t) |
| ✓ | 32.3b | (*.f64 (*.f64 y t) (neg.f64 z)) |
| ✓ | 7.6b | (*.f64 y (*.f64 (-.f64 x z) t)) |
| ✓ | 32.1b | (*.f64 y (*.f64 t (neg.f64 z))) |
| ✓ | 32.9b | (*.f64 y (*.f64 t x)) |
| ✓ | 31.2b | (*.f64 x (*.f64 y t)) |
Compiled 103 to 68 computations (34% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| Outputs |
|---|
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
6 calls:
| 27.0ms | z |
| 23.0ms | x |
| 18.0ms | (-.f64 (*.f64 x y) (*.f64 z y)) |
| 17.0ms | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 12.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 2.9b | 4 | x |
| 1.1b | 2 | y |
| 3.6b | 5 | z |
| 1.9b | 2 | t |
| 0.8b | 3 | (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) |
| 0.8b | 3 | (-.f64 (*.f64 x y) (*.f64 z y)) |
Compiled 111 to 57 computations (48.6% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.1890498518144207e+202 | 1.2968154861385966e+203 |
| 0.0ms | -inf | -1.1998990747729603e+303 |
Compiled 20 to 14 computations (30% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
(*.f64 (-.f64 x z) (*.f64 y t)) |
| Outputs |
|---|
(*.f64 (-.f64 x z) (*.f64 y t)) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
4 calls:
| 26.0ms | z |
| 21.0ms | x |
| 11.0ms | y |
| 11.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 2.9b | 4 | x |
| 1.1b | 2 | y |
| 3.6b | 5 | z |
| 1.9b | 2 | t |
Compiled 78 to 38 computations (51.3% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 9.0ms | -74693109.98654583 | -29444304.806766678 |
| 8.0ms | 80× | body | 256 | valid |
| 1.0ms | 6× | body | 256 | infinite |
Compiled 140 to 94 computations (32.9% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
| Outputs |
|---|
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (*.f64 y (-.f64 x z)) t) |
4 calls:
| 20.0ms | x |
| 11.0ms | z |
| 10.0ms | t |
| 10.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 4.3b | 4 | x |
| 1.9b | 2 | y |
| 5.3b | 2 | z |
| 1.9b | 2 | t |
Compiled 71 to 37 computations (47.9% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 7.0ms | -74693109.98654583 | -29444304.806766678 |
| 6.0ms | 48× | body | 256 | valid |
| 1.0ms | 6× | body | 256 | infinite |
Compiled 92 to 62 computations (32.6% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
| Outputs |
|---|
(*.f64 y (*.f64 (-.f64 x z) t)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 (-.f64 x z) t)) |
4 calls:
| 135.0ms | y |
| 130.0ms | x |
| 5.0ms | t |
| 5.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 6.3b | 3 | x |
| 6.5b | 3 | y |
| 7.6b | 1 | z |
| 7.6b | 1 | t |
Compiled 64 to 35 computations (45.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 19.0ms | 3.2754008379856145e+240 | 1.173631822130787e+248 |
| 16.0ms | 1.8664012146409938e+211 | 3.8634551389687475e+213 |
| 25.0ms | 256× | body | 256 | valid |
| 7.0ms | 73× | body | 256 | infinite |
Compiled 372 to 254 computations (31.7% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
| Outputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y (neg.f64 z)) t) |
(*.f64 x (*.f64 y t)) |
4 calls:
| 684.0ms | x |
| 140.0ms | y |
| 135.0ms | t |
| 14.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 15.5b | 7 | x |
| 16.8b | 10 | y |
| 16.5b | 3 | z |
| 22.0b | 8 | t |
Compiled 57 to 32 computations (43.9% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 5.915921468086958e+64 | 4.6655375858786624e+73 |
| 12.0ms | -2.746119390025556e-137 | -5.637940322553158e-139 |
| 188.0ms | -1.699577510369901e-111 | -7.624853581400143e-115 |
| 13.0ms | -7.495433603241357e-81 | -7.649814338613523e-84 |
| 90.0ms | -3.167429792186836e+25 | -2.5303592885633006e+22 |
| 12.0ms | -4.408421209292249e+36 | -1.4629512286492517e+35 |
| 322.0ms | 752× | body | 256 | valid |
| 1.0ms | 8× | body | 256 | infinite |
Compiled 1007 to 719 computations (28.6% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
| Outputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 (*.f64 y t) (neg.f64 z)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 x (*.f64 y t)) |
4 calls:
| 503.0ms | t |
| 472.0ms | y |
| 109.0ms | z |
| 27.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 16.4b | 7 | x |
| 18.5b | 10 | y |
| 16.8b | 3 | z |
| 22.0b | 8 | t |
Compiled 51 to 30 computations (41.2% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 5.368994135115293e+26 | 3.003157781399025e+30 |
| 55.0ms | -2.746119390025556e-137 | -5.637940322553158e-139 |
| 14.0ms | -1.699577510369901e-111 | -7.624853581400143e-115 |
| 14.0ms | -7.495433603241357e-81 | -7.649814338613523e-84 |
| 87.0ms | -3.167429792186836e+25 | -2.5303592885633006e+22 |
| 13.0ms | -4.408421209292249e+36 | -1.4629512286492517e+35 |
| 71.0ms | 736× | body | 256 | valid |
| 1.0ms | 13× | body | 256 | infinite |
Compiled 986 to 704 computations (28.6% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
| Outputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 (*.f64 y x) t) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 y (*.f64 t x)) |
(*.f64 y (*.f64 t (neg.f64 z))) |
(*.f64 x (*.f64 y t)) |
4 calls:
| 133.0ms | z |
| 111.0ms | y |
| 85.0ms | x |
| 27.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 16.5b | 7 | x |
| 18.8b | 10 | y |
| 17.1b | 3 | z |
| 22.6b | 8 | t |
Compiled 45 to 29 computations (35.6% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 137.0ms | 5.368994135115293e+26 | 3.003157781399025e+30 |
| 12.0ms | -2.746119390025556e-137 | -5.637940322553158e-139 |
| 15.0ms | -1.699577510369901e-111 | -7.624853581400143e-115 |
| 15.0ms | -7.495433603241357e-81 | -7.649814338613523e-84 |
| 15.0ms | -3.167429792186836e+25 | -2.5303592885633006e+22 |
| 12.0ms | -4.408421209292249e+36 | -1.4629512286492517e+35 |
| 197.0ms | 736× | body | 256 | valid |
| 1.0ms | 8× | body | 256 | infinite |
Compiled 986 to 704 computations (28.6% saved)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
(*.f64 (*.f64 y x) t) |
| Outputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 (*.f64 y x) t) |
4 calls:
| 125.0ms | t |
| 96.0ms | y |
| 6.0ms | z |
| 3.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 31.2b | 1 | x |
| 29.0b | 2 | y |
| 30.1b | 2 | z |
| 29.8b | 2 | t |
Compiled 39 to 26 computations (33.3% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 2.0ms | -74693109.98654583 | -29444304.806766678 |
| 2.0ms | 16× | body | 256 | valid |
| 0.0ms | 1× | body | 256 | infinite |
Compiled 40 to 28 computations (30% saved)
Total -5.2b remaining (-17.4%)
Threshold costs -5.2b (-17.4%)
| Inputs |
|---|
(*.f64 x (*.f64 y t)) |
(*.f64 y (*.f64 t x)) |
| Outputs |
|---|
(*.f64 y (*.f64 t x)) |
(*.f64 x (*.f64 y t)) |
4 calls:
| 92.0ms | t |
| 3.0ms | y |
| 3.0ms | x |
| 3.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 31.2b | 1 | x |
| 31.2b | 1 | y |
| 31.2b | 1 | z |
| 30.1b | 2 | t |
Compiled 34 to 24 computations (29.4% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 9.0ms | 3.2829144675001158e-77 | 4.303033455929193e-76 |
| 8.0ms | 80× | body | 256 | valid |
| 0.0ms | 5× | body | 256 | infinite |
Compiled 120 to 84 computations (30% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 100 | 834 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 (-.f64 (*.f64 x y) (*.f64 z y)) -inf.0) (*.f64 y (*.f64 (-.f64 x z) t)) (if (<=.f64 (-.f64 (*.f64 x y) (*.f64 z y)) 39999999999999996069898365278566921088288513469561573131779937617735292593067642627612308874319017922698993368415610338559487324165226195281267807637034885371667145141788750772056618645253570099507363840) (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) (*.f64 y (*.f64 (-.f64 x z) t)))) |
(if (<=.f64 y -49000000) (*.f64 (-.f64 x z) (*.f64 y t)) (*.f64 (*.f64 y (-.f64 x z)) t)) |
(if (<=.f64 y -60000000) (*.f64 y (*.f64 (-.f64 x z) t)) (*.f64 (*.f64 y (-.f64 x z)) t)) |
(if (<=.f64 x 3799999999999999731208266780288475015279918499935476213352581976440759041671715652650021725609437845636518516087218334083148480687800484618488447255059726989014514496783510753780395594203853894167168399562078420992) (*.f64 y (*.f64 (-.f64 x z) t)) (if (<=.f64 x 720000000000000041619366871779532401884210362472822014132962759362290854613931403051824538519080091753637333576692949389671270769557015971746425355077757414470073483640137911466182153896710591488938949177166095330258459041562228801651114317447168) (*.f64 (*.f64 y x) t) (*.f64 y (*.f64 (-.f64 x z) t)))) |
(if (<=.f64 x -154999999999999993293543059901906944) (*.f64 x (*.f64 y t)) (if (<=.f64 x -799999999999999932891136) (*.f64 (*.f64 y t) (neg.f64 z)) (if (<=.f64 x -7903152032907367/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 145000000000000005728009710115836410923129829554029484741580715720704) (*.f64 (*.f64 y (neg.f64 z)) t) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 x -439999999999999971441415615871451136) (*.f64 x (*.f64 y t)) (if (<=.f64 x -13199999999999999563792384) (*.f64 (*.f64 y t) (neg.f64 z)) (if (<=.f64 x -1067993517960455/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 130000000000000001177626345472) (*.f64 y (*.f64 t (neg.f64 z))) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 x -1060000000000000018402564150317285376) (*.f64 x (*.f64 y t)) (if (<=.f64 x -6200000000000000218103808) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -7903152032907367/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 45999999999999996762936836096) (*.f64 y (*.f64 t (neg.f64 z))) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 y -50000000) (*.f64 x (*.f64 y t)) (*.f64 (*.f64 y x) t)) |
(if (<=.f64 t 7170366636697391/65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032) (*.f64 y (*.f64 t x)) (*.f64 x (*.f64 y t))) |
(*.f64 x (*.f64 y t)) |
| Outputs |
|---|
(if (<=.f64 (-.f64 (*.f64 x y) (*.f64 z y)) -inf.0) (*.f64 y (*.f64 (-.f64 x z) t)) (if (<=.f64 (-.f64 (*.f64 x y) (*.f64 z y)) 39999999999999996069898365278566921088288513469561573131779937617735292593067642627612308874319017922698993368415610338559487324165226195281267807637034885371667145141788750772056618645253570099507363840) (*.f64 (-.f64 (*.f64 x y) (*.f64 z y)) t) (*.f64 y (*.f64 (-.f64 x z) t)))) |
(if (<=.f64 y -49000000) (*.f64 (-.f64 x z) (*.f64 y t)) (*.f64 (*.f64 y (-.f64 x z)) t)) |
(if (<=.f64 y -60000000) (*.f64 y (*.f64 (-.f64 x z) t)) (*.f64 (*.f64 y (-.f64 x z)) t)) |
(if (<=.f64 x 3799999999999999731208266780288475015279918499935476213352581976440759041671715652650021725609437845636518516087218334083148480687800484618488447255059726989014514496783510753780395594203853894167168399562078420992) (*.f64 y (*.f64 (-.f64 x z) t)) (if (<=.f64 x 720000000000000041619366871779532401884210362472822014132962759362290854613931403051824538519080091753637333576692949389671270769557015971746425355077757414470073483640137911466182153896710591488938949177166095330258459041562228801651114317447168) (*.f64 (*.f64 y x) t) (*.f64 y (*.f64 (-.f64 x z) t)))) |
(if (<=.f64 x -154999999999999993293543059901906944) (*.f64 x (*.f64 y t)) (if (<=.f64 x -799999999999999932891136) (*.f64 (*.f64 y t) (neg.f64 z)) (if (<=.f64 x -7903152032907367/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 145000000000000005728009710115836410923129829554029484741580715720704) (*.f64 (*.f64 y (neg.f64 z)) t) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 x -439999999999999971441415615871451136) (*.f64 x (*.f64 y t)) (if (<=.f64 x -13199999999999999563792384) (*.f64 (*.f64 y t) (neg.f64 z)) (if (<=.f64 x -1067993517960455/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 130000000000000001177626345472) (*.f64 y (*.f64 t (neg.f64 z))) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 x -1060000000000000018402564150317285376) (*.f64 x (*.f64 y t)) (if (<=.f64 x -6200000000000000218103808) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -7903152032907367/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) (*.f64 (*.f64 y x) t) (if (<=.f64 x -4325364722828471/5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648) (*.f64 y (*.f64 t (neg.f64 z))) (if (<=.f64 x -5656418970444533/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 y (*.f64 t x)) (if (<=.f64 x 45999999999999996762936836096) (*.f64 y (*.f64 t (neg.f64 z))) (*.f64 x (*.f64 y t)))))))) |
(if (<=.f64 y -50000000) (*.f64 x (*.f64 y t)) (*.f64 (*.f64 y x) t)) |
(if (<=.f64 t 7170366636697391/65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032) (*.f64 y (*.f64 t x)) (*.f64 x (*.f64 y t))) |
(*.f64 x (*.f64 y t)) |
Compiled 365 to 181 computations (50.4% saved)
| 1× | egg-herbie |
| 16× | rational.json-simplify-2 |
| 6× | rational.json-simplify-43 |
| 2× | rational.json-simplify-52 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 25 |
| 1 | 13 | 19 |
| 2 | 15 | 19 |
| 3 | 18 | 19 |
| 4 | 24 | 19 |
| 5 | 25 | 19 |
| 1× | saturated |
Compiled 45 to 17 computations (62.2% saved)
(sort y t)
Compiled 423 to 138 computations (67.4% saved)
Loading profile data...