Time bar (total: 4.3s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 6 |
| 12.5% | 12.5% | 87.4% | 0.1% | 0% | 0% | 0% | 7 |
| 21.9% | 21.8% | 78% | 0.1% | 0% | 0% | 0% | 8 |
| 30.2% | 29.6% | 68.6% | 0.1% | 1.6% | 0% | 0% | 9 |
| 39.8% | 38.2% | 57.7% | 0.1% | 3.9% | 0% | 0% | 10 |
| 48.4% | 46.4% | 49.5% | 0.1% | 3.9% | 0% | 0% | 11 |
| 56.1% | 52.9% | 41.3% | 0.1% | 5.7% | 0% | 0% | 12 |
Compiled 9 to 6 computations (33.3% saved)
| 715.0ms | 8256× | body | 256 | valid |
| 91.0ms | 1104× | body | 256 | infinite |
| 2× | egg-herbie |
| 5826× | rational.json-simplify-51 |
| 2984× | rational.json-simplify-35 |
| 1686× | rational.json-simplify-2 |
| 934× | rational.json-simplify-1 |
| 624× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 52 |
| 1 | 32 | 52 |
| 2 | 59 | 52 |
| 3 | 106 | 52 |
| 4 | 187 | 52 |
| 5 | 367 | 52 |
| 6 | 812 | 52 |
| 7 | 1146 | 52 |
| 8 | 1350 | 52 |
| 9 | 1599 | 52 |
| 10 | 1767 | 52 |
| 11 | 1857 | 52 |
| 12 | 1935 | 52 |
| 13 | 2001 | 52 |
| 14 | 2067 | 52 |
| 15 | 2967 | 52 |
| 16 | 3243 | 52 |
| 17 | 3333 | 52 |
| 18 | 3423 | 52 |
| 19 | 3513 | 52 |
| 20 | 3603 | 52 |
| 21 | 4113 | 52 |
| 22 | 4335 | 52 |
| 23 | 4401 | 52 |
| 24 | 4401 | 52 |
| 25 | 7338 | 52 |
| 26 | 7494 | 52 |
| 27 | 7683 | 52 |
| 28 | 7872 | 52 |
| 0 | 3 | 3 |
| 1 | 3 | 3 |
| 1× | unsound |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
| Outputs |
|---|
0 |
1 |
0 |
2 |
| Inputs |
|---|
(/.f64 (*.f64 x y) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 z y) x) |
(/.f64 (*.f64 x z) y) |
| Outputs |
|---|
(/.f64 (*.f64 x y) z) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(/.f64 (*.f64 z y) x) |
(*.f64 y (/.f64 z x)) |
(*.f64 z (/.f64 y x)) |
(/.f64 (*.f64 x z) y) |
(*.f64 z (/.f64 x y)) |
(*.f64 x (/.f64 z y)) |
(sort x y)
Compiled 11 to 8 computations (27.3% saved)
| 1× | egg-herbie |
| 5758× | rational.json-simplify-51 |
| 3396× | rational.json-simplify-1 |
| 3246× | rational.json-simplify-2 |
| 1328× | rational.json-simplify-35 |
| 688× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 13 | 13 |
| 2 | 24 | 13 |
| 3 | 41 | 13 |
| 4 | 74 | 13 |
| 5 | 144 | 13 |
| 6 | 335 | 13 |
| 7 | 853 | 13 |
| 8 | 1299 | 13 |
| 9 | 1477 | 13 |
| 10 | 1512 | 13 |
| 11 | 1545 | 13 |
| 12 | 1572 | 13 |
| 13 | 1599 | 13 |
| 14 | 1626 | 13 |
| 15 | 1653 | 13 |
| 16 | 1680 | 13 |
| 17 | 1707 | 13 |
| 18 | 1734 | 13 |
| 19 | 1761 | 13 |
| 20 | 1788 | 13 |
| 21 | 1815 | 13 |
| 22 | 1842 | 13 |
| 23 | 1869 | 13 |
| 24 | 7186 | 13 |
| 25 | 7401 | 13 |
| 26 | 7436 | 13 |
| 27 | 7471 | 13 |
| 28 | 7506 | 13 |
| 29 | 7541 | 13 |
| 30 | 7576 | 13 |
| 31 | 7611 | 13 |
| 32 | 7646 | 13 |
| 33 | 7681 | 13 |
| 34 | 7716 | 13 |
| 35 | 7751 | 13 |
| 36 | 7786 | 13 |
| 37 | 7821 | 13 |
| 38 | 7856 | 13 |
| 39 | 7891 | 13 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 x y) z) |
| Outputs |
|---|
(/.f64 (*.f64 x y) z) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
Compiled 18 to 9 computations (50% saved)
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 3 | 3 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 4 | 4 |
| Status | Error | Program |
|---|---|---|
| ▶ | 4.3b | (/.f64 (*.f64 x y) z) |
| ▶ | 6.3b | (*.f64 y (/.f64 x z)) |
| ▶ | 7.0b | (*.f64 x (/.f64 y z)) |
Compiled 24 to 15 computations (37.5% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.8b | (*.f64 x (/.f64 y z)) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (*.f64 x (/.f64 y z)) |
| 1.0ms | y | @ | inf | (*.f64 x (/.f64 y z)) |
| 1.0ms | y | @ | 0 | (*.f64 x (/.f64 y z)) |
| 1.0ms | x | @ | 0 | (*.f64 x (/.f64 y z)) |
| 0.0ms | z | @ | 0 | (*.f64 x (/.f64 y z)) |
| 1× | batch-egg-rewrite |
| 1672× | rational.json-1 |
| 1672× | rational.json-2 |
| 1672× | rational.json-4 |
| 1672× | rational.json-3 |
| 1664× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 126 | 13 |
| 3 | 317 | 13 |
| 4 | 851 | 13 |
| 5 | 4202 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 x (/.f64 y z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (*.f64 -1 (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 z (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (+.f64 (/.f64 z x) (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 -2 (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 (/.f64 z y) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 z (*.f64 x y)) (/.f64 z (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (+.f64 (*.f64 z (/.f64 2 x)) (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 2 (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 4 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 (*.f64 z 4) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 (+.f64 z z) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 -4 (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (/.f64 4 (/.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 -1 (/.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 z y) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 (/.f64 z y)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 x)) (*.f64 (/.f64 z y) (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (/.f64 (*.f64 z 4) y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (/.f64 (*.f64 z 4) y) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 x) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 8 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 4 (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x z) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z y) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (+.f64 (/.f64 (neg.f64 z) x) (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 2 (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 8 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (/.f64 (*.f64 z 4) y) (/.f64 (*.f64 z 4) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 4)) (*.f64 (/.f64 z y) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (+.f64 z z)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z 4) y) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (neg.f64 z)) (*.f64 -1 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (*.f64 (/.f64 z y) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/2) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y (/.f64 1/2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 y z)) (/.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x) (neg.f64 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 x z) (/.f64 x z)) (+.f64 (/.f64 1 y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 x x) z) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 x 4)) (/.f64 z y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) (/.f64 z x)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (/.f64 1 x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 1 x)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 1 x)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 1 x)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 1 x)) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 z) (/.f64 1 x)) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 y) (/.f64 1 x)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 z y) (/.f64 1 x)) (*.f64 z (/.f64 (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 1 x)) (neg.f64 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 1 x)) (/.f64 (*.f64 z 4) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) (/.f64 1 x)) (*.f64 z 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (neg.f64 (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 x)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 x)) (*.f64 2 (*.f64 z 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 y (neg.f64 z)) (/.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (neg.f64 (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (neg.f64 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 x)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 2 x)) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 2 x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 2 x)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 2 x)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x)) (*.f64 z (/.f64 (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 2 x)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 2 x)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 z 4) y) (/.f64 2 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (/.f64 2 x)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 (neg.f64 z) x)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 (neg.f64 z) x)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 (neg.f64 z) x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (/.f64 1 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x 1/2) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 x x)) (-.f64 0 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 x z)) (-.f64 0 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 x)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 y z)) 1))))) |
| 1× | egg-herbie |
| 1520× | rational.json-simplify-43 |
| 1502× | rational.json-simplify-35 |
| 1300× | rational.json-simplify-2 |
| 714× | rational.json-simplify-61 |
| 658× | rational.json-simplify-51 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 322 | 2605 |
| 1 | 1278 | 2557 |
| 2 | 4525 | 2545 |
| 3 | 7974 | 2545 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(/.f64 x (/.f64 z y)) |
(/.f64 y (/.f64 z x)) |
(/.f64 y (*.f64 -1 (/.f64 (neg.f64 z) x))) |
(/.f64 (/.f64 y z) (/.f64 1 x)) |
(/.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 x))) |
(/.f64 (*.f64 x (/.f64 y z)) 1) |
(/.f64 1 (/.f64 z (*.f64 x y))) |
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 x))) |
(/.f64 (+.f64 y y) (+.f64 (/.f64 z x) (/.f64 z x))) |
(/.f64 (+.f64 y y) (*.f64 -2 (/.f64 (neg.f64 z) x))) |
(/.f64 2 (*.f64 (/.f64 z y) (/.f64 2 x))) |
(/.f64 2 (+.f64 (/.f64 z (*.f64 x y)) (/.f64 z (*.f64 x y)))) |
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 x)) |
(/.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 x) (/.f64 1 x))) |
(/.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 x))) |
(/.f64 (*.f64 y 4) (+.f64 (*.f64 z (/.f64 2 x)) (*.f64 z (/.f64 2 x)))) |
(/.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x)) |
(/.f64 (*.f64 y 4) (*.f64 2 (*.f64 z (/.f64 2 x)))) |
(/.f64 (*.f64 y 4) (*.f64 4 (/.f64 z x))) |
(/.f64 (*.f64 y 4) (*.f64 (*.f64 z 4) (/.f64 1 x))) |
(/.f64 (*.f64 y 4) (*.f64 (+.f64 z z) (/.f64 2 x))) |
(/.f64 (*.f64 y 4) (*.f64 -4 (/.f64 (neg.f64 z) x))) |
(/.f64 (*.f64 y 4) (/.f64 4 (/.f64 x z))) |
(/.f64 (+.f64 x x) (*.f64 z (/.f64 2 y))) |
(/.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 2) |
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) x)) |
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 x))) |
(/.f64 (neg.f64 y) (/.f64 (neg.f64 z) x)) |
(/.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 x x))) |
(/.f64 (neg.f64 y) (/.f64 -1 (/.f64 x z))) |
(/.f64 (/.f64 z y) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 1 x))) |
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) x)) |
(/.f64 -1 (*.f64 (neg.f64 (/.f64 z y)) (/.f64 1 x))) |
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 1 x))) |
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 2 x))) |
(/.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 x)) (*.f64 (/.f64 z y) (/.f64 2 x)))) |
(/.f64 4 (/.f64 (/.f64 (*.f64 z 4) y) x)) |
(/.f64 4 (*.f64 (/.f64 (*.f64 z 4) y) (/.f64 1 x))) |
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x))) |
(/.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 x) (/.f64 2 x))) |
(/.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 x)) |
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 x))) |
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 x))) |
(/.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) x)) |
(/.f64 (*.f64 y 8) (*.f64 8 (/.f64 z x))) |
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 x))) |
(/.f64 (*.f64 y 8) (*.f64 4 (*.f64 z (/.f64 2 x)))) |
(/.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y)) |
(/.f64 (*.f64 (/.f64 y z) (*.f64 x 4)) 4) |
(/.f64 (/.f64 x z) (/.f64 1 y)) |
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) x)) |
(/.f64 1/2 (/.f64 (/.f64 z y) (+.f64 x x))) |
(/.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 x z))) |
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) x)) |
(/.f64 (*.f64 y -2) (+.f64 (/.f64 (neg.f64 z) x) (/.f64 (neg.f64 z) x))) |
(/.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) x)) |
(/.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) x)) |
(/.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 x))) |
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 x))) |
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 x))) |
(/.f64 (*.f64 y -2) (*.f64 2 (/.f64 (neg.f64 z) x))) |
(/.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 x x))) |
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 8 (/.f64 1 x))) |
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 x))) |
(/.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (/.f64 (*.f64 z 4) y) (/.f64 (*.f64 z 4) y))) |
(/.f64 (*.f64 2 (*.f64 x 4)) (*.f64 (/.f64 z y) 8)) |
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) 8) |
(/.f64 (/.f64 x (+.f64 z z)) (/.f64 1/2 y)) |
(/.f64 (/.f64 (*.f64 z 4) y) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 2 x))) |
(/.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x)) |
(/.f64 (/.f64 y (neg.f64 z)) (*.f64 -1 (/.f64 1 x))) |
(/.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (*.f64 (/.f64 z y) (/.f64 2 x))) |
(/.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1 (+.f64 x x))) |
(/.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 x))) |
(/.f64 (*.f64 x 1/2) (/.f64 z (+.f64 y y))) |
(/.f64 (*.f64 x (*.f64 y (/.f64 1/2 z))) 1/2) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 x))) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 x))) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 x))) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 (neg.f64 z) x))) |
(/.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 x))) |
(/.f64 (neg.f64 (/.f64 y z)) (/.f64 -1 x)) |
(/.f64 (neg.f64 x) (neg.f64 (/.f64 z y))) |
(/.f64 (+.f64 (/.f64 x z) (/.f64 x z)) (+.f64 (/.f64 1 y) (/.f64 1 y))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4)))) 16) |
(/.f64 (+.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y)))) |
(/.f64 (/.f64 (+.f64 x x) z) (/.f64 2 y)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 x 4)) (/.f64 z y)) 8) |
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z x)) 8) |
(/.f64 (/.f64 y (/.f64 1 x)) z) |
(/.f64 (/.f64 1 (/.f64 1 x)) (/.f64 z y)) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 1 x)) (+.f64 z z)) |
(/.f64 (/.f64 2 (/.f64 1 x)) (*.f64 z (/.f64 2 y))) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 1 x)) (*.f64 z 4)) |
(/.f64 (/.f64 (/.f64 1 z) (/.f64 1 x)) (/.f64 1 y)) |
(/.f64 (/.f64 (neg.f64 y) (/.f64 1 x)) (neg.f64 z)) |
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 x)) (*.f64 z (/.f64 (/.f64 z y) y))) |
(/.f64 (/.f64 -1 (/.f64 1 x)) (neg.f64 (/.f64 z y))) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y)))) |
(/.f64 (/.f64 4 (/.f64 1 x)) (/.f64 (*.f64 z 4) y)) |
(/.f64 (/.f64 (*.f64 y 8) (/.f64 1 x)) (*.f64 z 8)) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (*.f64 z -2)) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (neg.f64 (+.f64 z z))) |
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 x)) 8) |
(/.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 x)) (*.f64 2 (*.f64 z 8))) |
(/.f64 (/.f64 (/.f64 y (neg.f64 z)) (/.f64 1 x)) -1) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (*.f64 z -2))) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (neg.f64 (+.f64 z z)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (neg.f64 (*.f64 z 4))) |
(/.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 x)) (+.f64 z z)) |
(/.f64 (/.f64 1 (/.f64 2 x)) (/.f64 z (+.f64 y y))) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 2 x)) z) |
(/.f64 (/.f64 2 (/.f64 2 x)) (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 2 x)) (+.f64 z z)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x)) (*.f64 z (/.f64 (/.f64 z y) y))) |
(/.f64 (/.f64 4 (/.f64 2 x)) (*.f64 z (/.f64 2 y))) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 2 x)) (neg.f64 z)) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) y) (/.f64 2 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y)))) |
(/.f64 (/.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (/.f64 2 x)) (/.f64 z y)) |
(/.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 (neg.f64 z) x)) -2) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 (neg.f64 z) x)) -4) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 (neg.f64 z) x)) 4) |
(/.f64 (/.f64 x (/.f64 1 y)) z) |
(/.f64 (/.f64 x 1/2) (*.f64 z (/.f64 2 y))) |
(/.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y)) |
(/.f64 (neg.f64 (+.f64 x x)) (-.f64 0 (*.f64 z (/.f64 2 y)))) |
(/.f64 (neg.f64 (/.f64 x z)) (-.f64 0 (/.f64 1 y))) |
(/.f64 (neg.f64 (neg.f64 x)) (/.f64 z y)) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 y (/.f64 z x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 y (*.f64 -1 (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 y z) (/.f64 1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 1 (/.f64 z (*.f64 x y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 y y) (+.f64 (/.f64 z x) (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 y y) (*.f64 -2 (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 2 (*.f64 (/.f64 z y) (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 2 (+.f64 (/.f64 z (*.f64 x y)) (/.f64 z (*.f64 x y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 x) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (+.f64 (*.f64 z (/.f64 2 x)) (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (*.f64 2 (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (*.f64 4 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (*.f64 (*.f64 z 4) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (*.f64 (+.f64 z z) (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (*.f64 -4 (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 4) (/.f64 4 (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 x x) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 y) (/.f64 (neg.f64 z) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 y) (/.f64 -1 (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 z y) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 1 x))) |
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 x)) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 (/.f64 x (/.f64 y z)) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 -1 (*.f64 (neg.f64 (/.f64 z y)) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 1 x))) |
(/.f64 (/.f64 x (/.f64 1 (*.f64 z (/.f64 2 y)))) (*.f64 z (*.f64 (/.f64 z (*.f64 y y)) 2))) |
(*.f64 (/.f64 2 y) (/.f64 (/.f64 x (/.f64 1 z)) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 2 z)))) |
(*.f64 z (/.f64 (/.f64 2 y) (*.f64 (*.f64 2 (/.f64 z (*.f64 y y))) (/.f64 z x)))) |
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 z (/.f64 (/.f64 z y) y)) (/.f64 2 x))) |
(/.f64 (*.f64 (/.f64 2 y) (/.f64 z (/.f64 2 x))) (*.f64 z (/.f64 z (*.f64 y y)))) |
(*.f64 z (/.f64 (/.f64 2 y) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 z (/.f64 2 x))))) |
(/.f64 y (/.f64 (/.f64 z y) (*.f64 (/.f64 x (/.f64 2 z)) (/.f64 (/.f64 2 y) z)))) |
(/.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 x)) (*.f64 (/.f64 z y) (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 4 (/.f64 (/.f64 (*.f64 z 4) y) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 4 (*.f64 (/.f64 (*.f64 z 4) y) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 x) (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 8) (*.f64 8 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y 8) (*.f64 4 (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) (*.f64 x 4)) 4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 x z) (/.f64 1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 1/2 (/.f64 (/.f64 z y) (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (+.f64 (/.f64 (neg.f64 z) x) (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y -2) (*.f64 2 (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 x x))) |
(/.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (*.f64 (/.f64 2 z) (/.f64 y (+.f64 x x)))) |
(*.f64 (/.f64 y z) (/.f64 (+.f64 x x) (/.f64 (*.f64 y (/.f64 2 z)) (/.f64 y z)))) |
(*.f64 (/.f64 y z) (/.f64 (/.f64 y z) (*.f64 y (/.f64 (/.f64 2 z) (+.f64 x x))))) |
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 8 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (/.f64 (*.f64 z 4) y) (/.f64 (*.f64 z 4) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 x 4)) (*.f64 (/.f64 z y) 8)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 x (+.f64 z z)) (/.f64 1/2 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 z 4) y) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y))) (/.f64 2 x))) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) (*.f64 y (/.f64 2 x))) 2) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 x (*.f64 (/.f64 1/2 (/.f64 z y)) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 2 z)))) |
(/.f64 x (*.f64 (*.f64 z (*.f64 2 (/.f64 z (*.f64 y y)))) (/.f64 1/2 (/.f64 z y)))) |
(/.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 y (neg.f64 z)) (*.f64 -1 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (*.f64 (/.f64 z y) (/.f64 2 x))) |
(*.f64 (/.f64 z y) (/.f64 (*.f64 y (/.f64 2 z)) (*.f64 (/.f64 z y) (/.f64 2 x)))) |
(*.f64 (*.f64 y (/.f64 x z)) (/.f64 (/.f64 z y) (/.f64 z y))) |
(/.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1 (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 x 1/2) (/.f64 z (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 x (*.f64 y (/.f64 1/2 z))) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 (/.f64 y z)) (/.f64 -1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 x) (neg.f64 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 (/.f64 x z) (/.f64 x z)) (+.f64 (/.f64 1 y) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 4)))) 16) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (+.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (+.f64 x x) z) (/.f64 2 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 x 4)) (/.f64 z y)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z x)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 y (/.f64 1 x)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 1 (/.f64 1 x)) (/.f64 z y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 1 x)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 2 (/.f64 1 x)) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 1 x)) (*.f64 z 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (/.f64 1 z) (/.f64 1 x)) (/.f64 1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (neg.f64 y) (/.f64 1 x)) (neg.f64 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 x)) (*.f64 z (/.f64 (/.f64 z y) y))) |
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 x)) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 (/.f64 x (/.f64 y z)) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 (/.f64 -1 (/.f64 1 x)) (neg.f64 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y)))) |
(/.f64 (/.f64 x (/.f64 1 (*.f64 z (/.f64 2 y)))) (*.f64 z (*.f64 (/.f64 z (*.f64 y y)) 2))) |
(*.f64 (/.f64 2 y) (/.f64 (/.f64 x (/.f64 1 z)) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 2 z)))) |
(*.f64 z (/.f64 (/.f64 2 y) (*.f64 (*.f64 2 (/.f64 z (*.f64 y y))) (/.f64 z x)))) |
(/.f64 (/.f64 4 (/.f64 1 x)) (/.f64 (*.f64 z 4) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y 8) (/.f64 1 x)) (*.f64 z 8)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (*.f64 z -2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 x)) (neg.f64 (+.f64 z z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 x)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 x)) (*.f64 2 (*.f64 z 8))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (/.f64 y (neg.f64 z)) (/.f64 1 x)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (*.f64 z -2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (*.f64 2 (neg.f64 (+.f64 z z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 x)) (neg.f64 (*.f64 z 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 x)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 1 (/.f64 2 x)) (/.f64 z (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 2 x)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 2 (/.f64 2 x)) (/.f64 z y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 2 x)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 x)) (*.f64 z (/.f64 (/.f64 z y) y))) |
(/.f64 (*.f64 (/.f64 2 y) (/.f64 z (/.f64 2 x))) (*.f64 z (/.f64 z (*.f64 y y)))) |
(*.f64 z (/.f64 (/.f64 2 y) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 z (/.f64 2 x))))) |
(/.f64 y (/.f64 (/.f64 z y) (*.f64 (/.f64 x (/.f64 2 z)) (/.f64 (/.f64 2 y) z)))) |
(/.f64 (/.f64 4 (/.f64 2 x)) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y -2) (/.f64 2 x)) (neg.f64 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) y) (/.f64 2 x)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z y) y)))) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) (*.f64 y (/.f64 2 x))) 2) (*.f64 z (/.f64 z (*.f64 y y)))) |
(/.f64 x (*.f64 (/.f64 1/2 (/.f64 z y)) (*.f64 (/.f64 z (*.f64 y y)) (*.f64 2 z)))) |
(/.f64 x (*.f64 (*.f64 z (*.f64 2 (/.f64 z (*.f64 y y)))) (/.f64 1/2 (/.f64 z y)))) |
(/.f64 (/.f64 (*.f64 (*.f64 y (/.f64 2 z)) (/.f64 z y)) (/.f64 2 x)) (/.f64 z y)) |
(*.f64 (/.f64 z y) (/.f64 (*.f64 y (/.f64 2 z)) (*.f64 (/.f64 z y) (/.f64 2 x)))) |
(*.f64 (*.f64 y (/.f64 x z)) (/.f64 (/.f64 z y) (/.f64 z y))) |
(/.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (+.f64 y y) (/.f64 (neg.f64 z) x)) -2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 y 4) (/.f64 (neg.f64 z) x)) -4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 (neg.f64 z) x)) 4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 x (/.f64 1 y)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 x 1/2) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 (+.f64 x x)) (-.f64 0 (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 (/.f64 x z)) (-.f64 0 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (neg.f64 (neg.f64 x)) (/.f64 z y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.0b | (*.f64 y (/.f64 x z)) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | -inf | (*.f64 y (/.f64 x z)) |
| 0.0ms | x | @ | -inf | (*.f64 y (/.f64 x z)) |
| 0.0ms | y | @ | 0 | (*.f64 y (/.f64 x z)) |
| 0.0ms | x | @ | inf | (*.f64 y (/.f64 x z)) |
| 0.0ms | y | @ | inf | (*.f64 y (/.f64 x z)) |
| 1× | batch-egg-rewrite |
| 1672× | rational.json-1 |
| 1672× | rational.json-2 |
| 1672× | rational.json-4 |
| 1672× | rational.json-3 |
| 1664× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 48 | 13 |
| 2 | 126 | 13 |
| 3 | 317 | 13 |
| 4 | 851 | 13 |
| 5 | 4202 | 13 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (/.f64 x z)) |
| Outputs |
|---|
((#(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 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (*.f64 -1 (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x z) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x z) (*.f64 1/2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 z (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) (+.f64 (/.f64 z y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) (*.f64 -2 (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 (/.f64 z x) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 z (*.f64 y x)) (/.f64 z (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 2 z)) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 2 z)) (*.f64 2 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (+.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (*.f64 2 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (*.f64 4 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (*.f64 (*.f64 z 4) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (*.f64 (+.f64 z z) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (*.f64 -4 (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) (/.f64 4 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 (/.f64 1 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (*.f64 (/.f64 1 x) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x) (/.f64 (neg.f64 z) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x) (/.f64 -1 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 z x) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (/.f64 z (neg.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 (/.f64 z x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (*.f64 (/.f64 z x) (/.f64 2 y)) (*.f64 (/.f64 z x) (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (/.f64 (*.f64 z 4) x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (/.f64 (*.f64 z 4) x) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x z) 4) (/.f64 4 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x z) 4) (*.f64 4 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x z) 4) (*.f64 2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) (/.f64 (*.f64 z 8) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) (*.f64 8 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) (*.f64 (*.f64 z 8) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) (*.f64 4 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x))))) (#(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 y z) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z (+.f64 x x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z x) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 1/2 x) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (+.f64 (/.f64 (neg.f64 z) y) (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (/.f64 (neg.f64 (+.f64 z z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (/.f64 (*.f64 z -2) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (*.f64 (*.f64 z -2) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (*.f64 (neg.f64 z) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x -2) (*.f64 2 (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x z) (/.f64 x z)) (/.f64 (*.f64 x (/.f64 2 z)) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (*.f64 8 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 4)) (+.f64 (/.f64 (*.f64 z 4) x) (/.f64 (*.f64 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 4)) (*.f64 (/.f64 z x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (+.f64 z z)) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z 4) x) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (neg.f64 z)) (*.f64 -1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (*.f64 (/.f64 z x) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 1/2 z)) (/.f64 1 (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 1/2) (/.f64 z (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x (/.f64 1/2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 4) (*.f64 4 (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x -2)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 x z)) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (neg.f64 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y z) (/.f64 y z)) (+.f64 (/.f64 1 x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (+.f64 (neg.f64 (/.f64 z x)) (neg.f64 (/.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) z) (/.f64 2 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 y 4)) (/.f64 z x)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 8) (/.f64 z y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (/.f64 1 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 x x) (/.f64 1 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 4) (/.f64 1 y)) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 z) (/.f64 1 y)) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 x) (/.f64 1 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 z x) (/.f64 1 y)) (*.f64 z (/.f64 (/.f64 z x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 1 y)) (neg.f64 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 1 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 1 y)) (/.f64 (*.f64 z 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 8) (/.f64 1 y)) (*.f64 z 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (neg.f64 (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (/.f64 1 y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 x 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 x (neg.f64 z)) (/.f64 1 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 x -2)) (/.f64 1 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 x x) (/.f64 2 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 4) (/.f64 2 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y)) (*.f64 z (/.f64 (/.f64 z x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x -2) (/.f64 2 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 z 4) x) (/.f64 2 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (/.f64 2 y)) (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (/.f64 (neg.f64 z) y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 x x) (/.f64 (neg.f64 z) y)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 4) (/.f64 (neg.f64 z) y)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 (neg.f64 z) y)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (/.f64 1 x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 y y)) (-.f64 0 (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 y)) (/.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 x z)) 1))))) |
| 1× | egg-herbie |
| 1520× | rational.json-simplify-43 |
| 1500× | rational.json-simplify-35 |
| 1298× | rational.json-simplify-2 |
| 724× | rational.json-simplify-61 |
| 664× | rational.json-simplify-51 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 321 | 2605 |
| 1 | 1280 | 2557 |
| 2 | 4526 | 2545 |
| 3 | 7981 | 2545 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(/.f64 y (/.f64 z x)) |
(/.f64 x (/.f64 z y)) |
(/.f64 x (*.f64 -1 (/.f64 (neg.f64 z) y))) |
(/.f64 (/.f64 x z) (/.f64 1 y)) |
(/.f64 (/.f64 x z) (*.f64 1/2 (/.f64 2 y))) |
(/.f64 (*.f64 y (/.f64 x z)) 1) |
(/.f64 1 (/.f64 z (*.f64 y x))) |
(/.f64 (+.f64 x x) (*.f64 z (/.f64 2 y))) |
(/.f64 (+.f64 x x) (+.f64 (/.f64 z y) (/.f64 z y))) |
(/.f64 (+.f64 x x) (*.f64 -2 (/.f64 (neg.f64 z) y))) |
(/.f64 2 (*.f64 (/.f64 z x) (/.f64 2 y))) |
(/.f64 2 (+.f64 (/.f64 z (*.f64 y x)) (/.f64 z (*.f64 y x)))) |
(/.f64 (*.f64 x (/.f64 2 z)) (/.f64 2 y)) |
(/.f64 (*.f64 x (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y))) |
(/.f64 (*.f64 x (/.f64 2 z)) (*.f64 2 (/.f64 1 y))) |
(/.f64 (*.f64 x 4) (+.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y)))) |
(/.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y)) |
(/.f64 (*.f64 x 4) (*.f64 2 (*.f64 z (/.f64 2 y)))) |
(/.f64 (*.f64 x 4) (*.f64 4 (/.f64 z y))) |
(/.f64 (*.f64 x 4) (*.f64 (*.f64 z 4) (/.f64 1 y))) |
(/.f64 (*.f64 x 4) (*.f64 (+.f64 z z) (/.f64 2 y))) |
(/.f64 (*.f64 x 4) (*.f64 -4 (/.f64 (neg.f64 z) y))) |
(/.f64 (*.f64 x 4) (/.f64 4 (/.f64 y z))) |
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 x))) |
(/.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 2) |
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 x) y)) |
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 x) (/.f64 1 y))) |
(/.f64 (neg.f64 x) (/.f64 (neg.f64 z) y)) |
(/.f64 (neg.f64 x) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y))) |
(/.f64 (neg.f64 x) (/.f64 -1 (/.f64 y z))) |
(/.f64 (/.f64 z x) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 1 y))) |
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 x)) y)) |
(/.f64 -1 (*.f64 (neg.f64 (/.f64 z x)) (/.f64 1 y))) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 1 y))) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 2 y))) |
(/.f64 4 (+.f64 (*.f64 (/.f64 z x) (/.f64 2 y)) (*.f64 (/.f64 z x) (/.f64 2 y)))) |
(/.f64 4 (/.f64 (/.f64 (*.f64 z 4) x) y)) |
(/.f64 4 (*.f64 (/.f64 (*.f64 z 4) x) (/.f64 1 y))) |
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y))) |
(/.f64 (*.f64 (/.f64 x z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y))) |
(/.f64 (*.f64 (/.f64 x z) 4) (/.f64 4 y)) |
(/.f64 (*.f64 (/.f64 x z) 4) (*.f64 4 (/.f64 1 y))) |
(/.f64 (*.f64 (/.f64 x z) 4) (*.f64 2 (/.f64 2 y))) |
(/.f64 (*.f64 x 8) (/.f64 (*.f64 z 8) y)) |
(/.f64 (*.f64 x 8) (*.f64 8 (/.f64 z y))) |
(/.f64 (*.f64 x 8) (*.f64 (*.f64 z 8) (/.f64 1 y))) |
(/.f64 (*.f64 x 8) (*.f64 4 (*.f64 z (/.f64 2 y)))) |
(/.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x)) |
(/.f64 (*.f64 (/.f64 x z) (*.f64 y 4)) 4) |
(/.f64 (/.f64 y z) (/.f64 1 x)) |
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 x x)) y)) |
(/.f64 1/2 (/.f64 (/.f64 z x) (+.f64 y y))) |
(/.f64 1/2 (/.f64 (/.f64 1/2 x) (/.f64 y z))) |
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 x) y)) |
(/.f64 (*.f64 x -2) (+.f64 (/.f64 (neg.f64 z) y) (/.f64 (neg.f64 z) y))) |
(/.f64 (*.f64 x -2) (/.f64 (neg.f64 (+.f64 z z)) y)) |
(/.f64 (*.f64 x -2) (/.f64 (*.f64 z -2) y)) |
(/.f64 (*.f64 x -2) (*.f64 (*.f64 z -2) (/.f64 1 y))) |
(/.f64 (*.f64 x -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 y))) |
(/.f64 (*.f64 x -2) (*.f64 (neg.f64 z) (/.f64 2 y))) |
(/.f64 (*.f64 x -2) (*.f64 2 (/.f64 (neg.f64 z) y))) |
(/.f64 (*.f64 (/.f64 x z) (/.f64 x z)) (/.f64 (*.f64 x (/.f64 2 z)) (+.f64 y y))) |
(/.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (*.f64 8 (/.f64 1 y))) |
(/.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 y))) |
(/.f64 (*.f64 2 (*.f64 y 4)) (+.f64 (/.f64 (*.f64 z 4) x) (/.f64 (*.f64 z 4) x))) |
(/.f64 (*.f64 2 (*.f64 y 4)) (*.f64 (/.f64 z x) 8)) |
(/.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) 8) |
(/.f64 (/.f64 y (+.f64 z z)) (/.f64 1/2 x)) |
(/.f64 (/.f64 (*.f64 z 4) x) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 2 y))) |
(/.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y)) |
(/.f64 (/.f64 x (neg.f64 z)) (*.f64 -1 (/.f64 1 y))) |
(/.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (*.f64 (/.f64 z x) (/.f64 2 y))) |
(/.f64 (*.f64 x (/.f64 1/2 z)) (/.f64 1 (+.f64 y y))) |
(/.f64 (*.f64 x (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 y))) |
(/.f64 (*.f64 y 1/2) (/.f64 z (+.f64 x x))) |
(/.f64 (*.f64 y (*.f64 x (/.f64 1/2 z))) 1/2) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 y))) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 y))) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 y))) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 4 (/.f64 (neg.f64 z) y))) |
(/.f64 (neg.f64 (*.f64 x -2)) (*.f64 z (/.f64 2 y))) |
(/.f64 (neg.f64 (/.f64 x z)) (/.f64 -1 y)) |
(/.f64 (neg.f64 y) (neg.f64 (/.f64 z x))) |
(/.f64 (+.f64 (/.f64 y z) (/.f64 y z)) (+.f64 (/.f64 1 x) (/.f64 1 x))) |
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4)))) 16) |
(/.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (+.f64 (neg.f64 (/.f64 z x)) (neg.f64 (/.f64 z x)))) |
(/.f64 (/.f64 (+.f64 y y) z) (/.f64 2 x)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 y 4)) (/.f64 z x)) 8) |
(/.f64 (/.f64 (*.f64 x 8) (/.f64 z y)) 8) |
(/.f64 (/.f64 x (/.f64 1 y)) z) |
(/.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z x)) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 1 y)) (+.f64 z z)) |
(/.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 x))) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 1 y)) (*.f64 z 4)) |
(/.f64 (/.f64 (/.f64 1 z) (/.f64 1 y)) (/.f64 1 x)) |
(/.f64 (/.f64 (neg.f64 x) (/.f64 1 y)) (neg.f64 z)) |
(/.f64 (/.f64 (/.f64 z x) (/.f64 1 y)) (*.f64 z (/.f64 (/.f64 z x) x))) |
(/.f64 (/.f64 -1 (/.f64 1 y)) (neg.f64 (/.f64 z x))) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 1 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 (/.f64 4 (/.f64 1 y)) (/.f64 (*.f64 z 4) x)) |
(/.f64 (/.f64 (*.f64 x 8) (/.f64 1 y)) (*.f64 z 8)) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (*.f64 z -2)) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (neg.f64 (+.f64 z z))) |
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (/.f64 1 y)) 8) |
(/.f64 (/.f64 (*.f64 2 (*.f64 x 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8))) |
(/.f64 (/.f64 (/.f64 x (neg.f64 z)) (/.f64 1 y)) -1) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2))) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4))) |
(/.f64 (/.f64 (neg.f64 (*.f64 x -2)) (/.f64 1 y)) (+.f64 z z)) |
(/.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 x x))) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 2 y)) z) |
(/.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z x)) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 2 y)) (+.f64 z z)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y)) (*.f64 z (/.f64 (/.f64 z x) x))) |
(/.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 x))) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 2 y)) (neg.f64 z)) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) x) (/.f64 2 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 (/.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (/.f64 2 y)) (/.f64 z x)) |
(/.f64 (/.f64 x (/.f64 (neg.f64 z) y)) -1) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 (neg.f64 z) y)) -2) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 (neg.f64 z) y)) -4) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 (neg.f64 z) y)) 4) |
(/.f64 (/.f64 y (/.f64 1 x)) z) |
(/.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 x))) |
(/.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x)) |
(/.f64 (neg.f64 (+.f64 y y)) (-.f64 0 (*.f64 z (/.f64 2 x)))) |
(/.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 x))) |
(/.f64 (neg.f64 (neg.f64 y)) (/.f64 z x)) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 y (/.f64 z x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 x (/.f64 z y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (*.f64 -1 (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 x z) (/.f64 1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 x z) (*.f64 1/2 (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 1 (/.f64 z (*.f64 y x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 x x) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 x x) (+.f64 (/.f64 z y) (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 x x) (*.f64 -2 (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 2 (*.f64 (/.f64 z x) (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 2 (+.f64 (/.f64 z (*.f64 y x)) (/.f64 z (*.f64 y x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x (/.f64 2 z)) (/.f64 2 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x (/.f64 2 z)) (*.f64 2 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (+.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (/.f64 (*.f64 z 4) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (*.f64 2 (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (*.f64 4 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (*.f64 (*.f64 z 4) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (*.f64 (+.f64 z z) (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (*.f64 -4 (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 4) (/.f64 4 (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 x) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 x) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 x) (/.f64 (neg.f64 z) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 x) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 x) (/.f64 -1 (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 z x) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 1 y))) |
(/.f64 (/.f64 (/.f64 z x) (/.f64 1 y)) (*.f64 z (/.f64 z (*.f64 x x)))) |
(/.f64 y (*.f64 (/.f64 x z) (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 y (*.f64 (/.f64 x z) (*.f64 z (/.f64 z (*.f64 x x))))) |
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 x)) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 -1 (*.f64 (neg.f64 (/.f64 z x)) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 1 y))) |
(/.f64 (*.f64 (/.f64 2 x) (/.f64 z (/.f64 1 y))) (*.f64 z (*.f64 (/.f64 z (*.f64 x x)) 2))) |
(*.f64 (/.f64 2 x) (/.f64 (/.f64 z (/.f64 1 y)) (*.f64 (/.f64 (/.f64 z x) x) (*.f64 z 2)))) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (/.f64 z (*.f64 x x)) (*.f64 (/.f64 z y) 2))) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (*.f64 z (/.f64 (/.f64 z x) x)) (/.f64 2 y))) |
(/.f64 (*.f64 (/.f64 2 x) (/.f64 z (/.f64 2 y))) (*.f64 z (/.f64 z (*.f64 x x)))) |
(*.f64 (/.f64 2 x) (/.f64 z (*.f64 z (*.f64 (/.f64 (/.f64 z x) x) (/.f64 2 y))))) |
(*.f64 z (/.f64 (/.f64 2 x) (*.f64 z (*.f64 (/.f64 2 y) (/.f64 z (*.f64 x x)))))) |
(/.f64 4 (+.f64 (*.f64 (/.f64 z x) (/.f64 2 y)) (*.f64 (/.f64 z x) (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 4 (/.f64 (/.f64 (*.f64 z 4) x) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 4 (*.f64 (/.f64 (*.f64 z 4) x) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) 4) (/.f64 4 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) 4) (*.f64 4 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) 4) (*.f64 2 (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 8) (/.f64 (*.f64 z 8) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 8) (*.f64 8 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 8) (*.f64 (*.f64 z 8) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x 8) (*.f64 4 (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y 4) (/.f64 (*.f64 z 4) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) (*.f64 y 4)) 4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 y z) (/.f64 1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 x x)) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 1/2 (/.f64 (/.f64 z x) (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 1/2 (/.f64 (/.f64 1/2 x) (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 x) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (+.f64 (/.f64 (neg.f64 z) y) (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (/.f64 (neg.f64 (+.f64 z z)) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (/.f64 (*.f64 z -2) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (*.f64 (*.f64 z -2) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (*.f64 (neg.f64 (+.f64 z z)) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (*.f64 (neg.f64 z) (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x -2) (*.f64 2 (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (/.f64 x z) (/.f64 x z)) (/.f64 (*.f64 x (/.f64 2 z)) (+.f64 y y))) |
(*.f64 (/.f64 x z) (/.f64 (/.f64 x z) (*.f64 (/.f64 2 z) (/.f64 x (+.f64 y y))))) |
(*.f64 (/.f64 x z) (/.f64 (+.f64 y y) (/.f64 (*.f64 x (/.f64 2 z)) (/.f64 x z)))) |
(/.f64 (*.f64 (/.f64 x z) (/.f64 x z)) (*.f64 x (/.f64 (/.f64 2 z) (+.f64 y y)))) |
(/.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (*.f64 8 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 2 (*.f64 z 8)) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 2 (*.f64 y 4)) (+.f64 (/.f64 (*.f64 z 4) x) (/.f64 (*.f64 z 4) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 2 (*.f64 y 4)) (*.f64 (/.f64 z x) 8)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 y (+.f64 z z)) (/.f64 1/2 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 z 4) x) (*.f64 (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x))) (/.f64 2 y))) |
(/.f64 (/.f64 (*.f64 z 4) (*.f64 x (/.f64 2 y))) (*.f64 z (*.f64 (/.f64 z (*.f64 x x)) 2))) |
(/.f64 y (*.f64 (/.f64 1/2 (/.f64 z x)) (*.f64 (/.f64 (/.f64 z x) x) (*.f64 z 2)))) |
(/.f64 y (*.f64 2 (*.f64 (*.f64 z (/.f64 z (*.f64 x x))) (/.f64 1/2 (/.f64 z x))))) |
(/.f64 (/.f64 x (neg.f64 z)) (/.f64 -1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 x (neg.f64 z)) (*.f64 -1 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (*.f64 (/.f64 z x) (/.f64 2 y))) |
(/.f64 (*.f64 (/.f64 z x) (*.f64 x (/.f64 2 z))) (*.f64 (/.f64 z x) (/.f64 2 y))) |
(*.f64 (*.f64 y (/.f64 x z)) (/.f64 (/.f64 z x) (/.f64 z x))) |
(*.f64 (/.f64 x (/.f64 z y)) (/.f64 (/.f64 z x) (/.f64 z x))) |
(/.f64 (*.f64 x (/.f64 1/2 z)) (/.f64 1 (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x (/.f64 1/2 z)) (*.f64 1/2 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y 1/2) (/.f64 z (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 y (*.f64 x (/.f64 1/2 z))) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (*.f64 z -2)) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (*.f64 2 (neg.f64 (+.f64 z z))) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 (neg.f64 (*.f64 z 4)) (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 (neg.f64 x) 4) (*.f64 4 (/.f64 (neg.f64 z) y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 (*.f64 x -2)) (*.f64 z (/.f64 2 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 (/.f64 x z)) (/.f64 -1 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 y) (neg.f64 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 (/.f64 y z) (/.f64 y z)) (+.f64 (/.f64 1 x) (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 x z) (*.f64 y 4)))) 16) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (+.f64 (neg.f64 (/.f64 z x)) (neg.f64 (/.f64 z x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (+.f64 y y) z) (/.f64 2 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 y 4)) (/.f64 z x)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x 8) (/.f64 z y)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 x (/.f64 1 y)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 1 y)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 1 y)) (*.f64 z 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (/.f64 1 z) (/.f64 1 y)) (/.f64 1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (neg.f64 x) (/.f64 1 y)) (neg.f64 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (/.f64 z x) (/.f64 1 y)) (*.f64 z (/.f64 (/.f64 z x) x))) |
(/.f64 (/.f64 (/.f64 z x) (/.f64 1 y)) (*.f64 z (/.f64 z (*.f64 x x)))) |
(/.f64 y (*.f64 (/.f64 x z) (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 y (*.f64 (/.f64 x z) (*.f64 z (/.f64 z (*.f64 x x))))) |
(/.f64 (/.f64 -1 (/.f64 1 y)) (neg.f64 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 1 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 (*.f64 (/.f64 2 x) (/.f64 z (/.f64 1 y))) (*.f64 z (*.f64 (/.f64 z (*.f64 x x)) 2))) |
(*.f64 (/.f64 2 x) (/.f64 (/.f64 z (/.f64 1 y)) (*.f64 (/.f64 (/.f64 z x) x) (*.f64 z 2)))) |
(/.f64 (*.f64 z (/.f64 2 x)) (*.f64 (/.f64 z (*.f64 x x)) (*.f64 (/.f64 z y) 2))) |
(/.f64 (/.f64 4 (/.f64 1 y)) (/.f64 (*.f64 z 4) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x 8) (/.f64 1 y)) (*.f64 z 8)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (*.f64 z -2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 1 y)) (neg.f64 (+.f64 z z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 x z) 4)) (/.f64 1 y)) 8) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 2 (*.f64 x 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (/.f64 x (neg.f64 z)) (/.f64 1 y)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (neg.f64 (*.f64 x -2)) (/.f64 1 y)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 2 y)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 2 y)) (+.f64 z z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 z (/.f64 2 x)) (/.f64 2 y)) (*.f64 z (/.f64 (/.f64 z x) x))) |
(/.f64 (*.f64 (/.f64 2 x) (/.f64 z (/.f64 2 y))) (*.f64 z (/.f64 z (*.f64 x x)))) |
(*.f64 (/.f64 2 x) (/.f64 z (*.f64 z (*.f64 (/.f64 (/.f64 z x) x) (/.f64 2 y))))) |
(*.f64 z (/.f64 (/.f64 2 x) (*.f64 z (*.f64 (/.f64 2 y) (/.f64 z (*.f64 x x)))))) |
(/.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x -2) (/.f64 2 y)) (neg.f64 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (/.f64 (*.f64 z 4) x) (/.f64 2 y)) (*.f64 2 (*.f64 z (/.f64 (/.f64 z x) x)))) |
(/.f64 (/.f64 (*.f64 z 4) (*.f64 x (/.f64 2 y))) (*.f64 z (*.f64 (/.f64 z (*.f64 x x)) 2))) |
(/.f64 y (*.f64 (/.f64 1/2 (/.f64 z x)) (*.f64 (/.f64 (/.f64 z x) x) (*.f64 z 2)))) |
(/.f64 y (*.f64 2 (*.f64 (*.f64 z (/.f64 z (*.f64 x x))) (/.f64 1/2 (/.f64 z x))))) |
(/.f64 (/.f64 (*.f64 (*.f64 x (/.f64 2 z)) (/.f64 z x)) (/.f64 2 y)) (/.f64 z x)) |
(/.f64 (*.f64 (/.f64 z x) (*.f64 x (/.f64 2 z))) (*.f64 (/.f64 z x) (/.f64 2 y))) |
(*.f64 (*.f64 y (/.f64 x z)) (/.f64 (/.f64 z x) (/.f64 z x))) |
(*.f64 (/.f64 x (/.f64 z y)) (/.f64 (/.f64 z x) (/.f64 z x))) |
(/.f64 (/.f64 x (/.f64 (neg.f64 z) y)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (+.f64 x x) (/.f64 (neg.f64 z) y)) -2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 x 4) (/.f64 (neg.f64 z) y)) -4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 (*.f64 (neg.f64 x) 4) (/.f64 (neg.f64 z) y)) 4) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 y (/.f64 1 x)) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (/.f64 y (neg.f64 z)) (/.f64 -1 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 (+.f64 y y)) (-.f64 0 (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 (neg.f64 (neg.f64 y)) (/.f64 z x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 4.2b | (/.f64 (*.f64 x y) z) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (/.f64 (*.f64 x y) z) |
| 0.0ms | x | @ | inf | (/.f64 (*.f64 x y) z) |
| 0.0ms | x | @ | -inf | (/.f64 (*.f64 x y) z) |
| 0.0ms | y | @ | -inf | (/.f64 (*.f64 x y) z) |
| 0.0ms | y | @ | inf | (/.f64 (*.f64 x y) z) |
| 1× | batch-egg-rewrite |
| 1846× | rational.json-simplify-35 |
| 1242× | rational.json-1 |
| 1242× | rational.json-2 |
| 1242× | rational.json-4 |
| 1242× | rational.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 50 | 13 |
| 2 | 146 | 13 |
| 3 | 419 | 13 |
| 4 | 1348 | 13 |
| 5 | 3763 | 13 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 x y) z) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (*.f64 x y) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) (*.f64 (/.f64 1/2 z) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (*.f64 x y) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (*.f64 y (/.f64 2 z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (*.f64 2 (/.f64 1 z)) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (/.f64 2 z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 1/2 (*.f64 x (/.f64 2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (*.f64 x (/.f64 2 z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (/.f64 2 z) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x y) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x y) (*.f64 (*.f64 2 (/.f64 1 z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x y) (*.f64 (/.f64 2 z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 y y)) (/.f64 1/2 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 y y)) (*.f64 (*.f64 (/.f64 1 z) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 x (/.f64 1/2 z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (*.f64 x y) 2) (/.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 x 1/2) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 x (/.f64 y z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 y z) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y 1/2) (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 y (*.f64 x (/.f64 1/2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x (*.f64 y (/.f64 1/2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 x y) (/.f64 1/2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 y (/.f64 1/2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 1/2 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) (*.f64 (/.f64 1 (*.f64 z 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/4 (/.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/2 (/.f64 1/2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1/2 (/.f64 x z)))))) (#(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 1 z) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 x)) (/.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 x)) (*.f64 (/.f64 -1 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 x y) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (neg.f64 x) z) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (*.f64 x y) (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 2 z)) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 2 z)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (*.f64 y (/.f64 2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 x (/.f64 2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 z) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x y) (neg.f64 z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 z) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 x y) (neg.f64 z))))))) |
| 1× | egg-herbie |
| 1596× | rational.json-simplify-35 |
| 1376× | rational.json-simplify-49 |
| 986× | rational.json-simplify-43 |
| 938× | exponential.json-simplify-26 |
| 808× | rational.json-simplify-51 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 149 | 1378 |
| 1 | 334 | 1378 |
| 2 | 744 | 1378 |
| 3 | 1850 | 1378 |
| 4 | 4404 | 1378 |
| 5 | 6306 | 1378 |
| 6 | 7059 | 1378 |
| 7 | 7597 | 1378 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(+.f64 -1 (-.f64 1 (/.f64 (*.f64 x y) (neg.f64 z)))) |
(+.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) (*.f64 (/.f64 1/2 z) (*.f64 x y))) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(-.f64 0 (/.f64 (*.f64 x y) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 x (*.f64 (*.f64 y (/.f64 2 z)) 1/2)) |
(*.f64 x (*.f64 (*.f64 2 (/.f64 1 z)) (*.f64 y 1/2))) |
(*.f64 x (*.f64 (/.f64 2 z) (*.f64 y 1/2))) |
(*.f64 y (/.f64 x z)) |
(*.f64 y (*.f64 1/2 (*.f64 x (/.f64 2 z)))) |
(*.f64 y (*.f64 (*.f64 x (/.f64 2 z)) 1/2)) |
(*.f64 y (*.f64 (/.f64 2 z) (*.f64 x 1/2))) |
(*.f64 (*.f64 x y) (/.f64 1 z)) |
(*.f64 (*.f64 x y) (*.f64 (*.f64 2 (/.f64 1 z)) 1/2)) |
(*.f64 (*.f64 x y) (*.f64 (/.f64 2 z) 1/2)) |
(*.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 1 (*.f64 x (/.f64 y z))) |
(*.f64 (*.f64 x (+.f64 y y)) (/.f64 1/2 z)) |
(*.f64 (*.f64 x (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2)) |
(*.f64 (*.f64 x (+.f64 y y)) (*.f64 (*.f64 (/.f64 1 z) 1/2) 1)) |
(*.f64 (/.f64 x z) y) |
(*.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 x y))) |
(*.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) x)) |
(*.f64 2 (*.f64 (*.f64 x (/.f64 1/2 z)) y)) |
(*.f64 2 (*.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 1)) |
(*.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 x z))) |
(*.f64 2 (*.f64 (/.f64 (*.f64 x y) 2) (/.f64 1 z))) |
(*.f64 2 (*.f64 (*.f64 x 1/2) (/.f64 y z))) |
(*.f64 2 (*.f64 (*.f64 x (/.f64 y z)) 1/2)) |
(*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 1/2))) |
(*.f64 2 (/.f64 (*.f64 y 1/2) (/.f64 z x))) |
(*.f64 2 (*.f64 y (*.f64 x (/.f64 1/2 z)))) |
(*.f64 2 (*.f64 x (*.f64 y (/.f64 1/2 z)))) |
(*.f64 2 (*.f64 (*.f64 x y) (/.f64 1/2 z))) |
(*.f64 (+.f64 x x) (*.f64 y (/.f64 1/2 z))) |
(*.f64 (+.f64 x x) (*.f64 1/2 (/.f64 y z))) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2) |
(*.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4))) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 (/.f64 1 (*.f64 z 4)) 1)) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/4 (/.f64 1 z))) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/2 (/.f64 1/2 z))) |
(*.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z))) |
(*.f64 (+.f64 y y) (*.f64 1/2 (/.f64 x z))) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 (/.f64 1 z) (*.f64 x y)) |
(*.f64 (/.f64 y z) x) |
(*.f64 (neg.f64 x) (/.f64 y (neg.f64 z))) |
(*.f64 (*.f64 y (neg.f64 x)) (/.f64 -1 z)) |
(*.f64 (*.f64 y (neg.f64 x)) (*.f64 (/.f64 -1 z) 1)) |
(*.f64 -1 (/.f64 (*.f64 x y) (neg.f64 z))) |
(*.f64 -1 (*.f64 (/.f64 (neg.f64 x) z) y)) |
(*.f64 -1 (*.f64 (/.f64 (*.f64 x y) (neg.f64 z)) 1)) |
(*.f64 (*.f64 x (/.f64 2 z)) (*.f64 y 1/2)) |
(*.f64 (*.f64 y (/.f64 2 z)) (*.f64 x 1/2)) |
(*.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z)))) |
(*.f64 (*.f64 x 1/2) (*.f64 y (/.f64 2 z))) |
(*.f64 (*.f64 y 1/2) (*.f64 x (/.f64 2 z))) |
(*.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y)) |
(*.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 x x)) |
(*.f64 (/.f64 1/2 z) (*.f64 x (+.f64 y y))) |
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 x (+.f64 y y))) |
(*.f64 (/.f64 (*.f64 x y) (neg.f64 z)) -1) |
(*.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 2) |
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 x))) |
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4))) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
(neg.f64 (/.f64 (*.f64 x y) (neg.f64 z))) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(+.f64 -1 (-.f64 1 (/.f64 (*.f64 x y) (neg.f64 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) (*.f64 (/.f64 1/2 z) (*.f64 x y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(-.f64 0 (/.f64 (*.f64 x y) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (*.f64 (*.f64 y (/.f64 2 z)) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (*.f64 (*.f64 2 (/.f64 1 z)) (*.f64 y 1/2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (*.f64 (/.f64 2 z) (*.f64 y 1/2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 y (*.f64 1/2 (*.f64 x (/.f64 2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 y (*.f64 (*.f64 x (/.f64 2 z)) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 y (*.f64 (/.f64 2 z) (*.f64 x 1/2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x y) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x y) (*.f64 (*.f64 2 (/.f64 1 z)) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x y) (*.f64 (/.f64 2 z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 1 (*.f64 x (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (+.f64 y y)) (/.f64 1/2 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (+.f64 y y)) (*.f64 (*.f64 (/.f64 1 z) 1/2) 1)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 x z) y) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 x y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 x (/.f64 1/2 z)) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 1)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (/.f64 (*.f64 x y) 2) (/.f64 1 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 x 1/2) (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 x (/.f64 y z)) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (/.f64 y z) (*.f64 x 1/2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (/.f64 (*.f64 y 1/2) (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 y (*.f64 x (/.f64 1/2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 x (*.f64 y (/.f64 1/2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 2 (*.f64 (*.f64 x y) (/.f64 1/2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 x x) (*.f64 y (/.f64 1/2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 x x) (*.f64 1/2 (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 (/.f64 1 (*.f64 z 4)) 1)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/4 (/.f64 1 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (*.f64 x 4)) (*.f64 1/2 (/.f64 1/2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 y y) (*.f64 1/2 (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 1 z) (*.f64 x y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 y z) x) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (neg.f64 x) (/.f64 y (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (neg.f64 x)) (/.f64 -1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (neg.f64 x)) (*.f64 (/.f64 -1 z) 1)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 -1 (/.f64 (*.f64 x y) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 -1 (*.f64 (/.f64 (neg.f64 x) z) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 -1 (*.f64 (/.f64 (*.f64 x y) (neg.f64 z)) 1)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (/.f64 2 z)) (*.f64 y 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (/.f64 2 z)) (*.f64 x 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x 1/2) (*.f64 y (/.f64 2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y 1/2) (*.f64 x (/.f64 2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 1/2 z) (*.f64 x (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 x (+.f64 y y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 (*.f64 x y) (neg.f64 z)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (*.f64 (/.f64 1/2 z) (*.f64 x y)) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(neg.f64 (/.f64 (*.f64 x y) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
Compiled 4121 to 2110 computations (48.8% saved)
6 alts after pruning (3 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 374 | 3 | 377 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 374 | 6 | 380 |
| Status | Error | Program |
|---|---|---|
| ▶ | 4.4b | (/.f64 (/.f64 y (/.f64 1 x)) z) |
| ✓ | 4.3b | (/.f64 (*.f64 x y) z) |
| ▶ | 5.9b | (/.f64 y (/.f64 z x)) |
| ▶ | 6.7b | (/.f64 x (/.f64 z y)) |
| ✓ | 6.3b | (*.f64 y (/.f64 x z)) |
| ✓ | 7.0b | (*.f64 x (/.f64 y z)) |
Compiled 50 to 32 computations (36% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.5b | (/.f64 x (/.f64 z y)) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (/.f64 x (/.f64 z y)) |
| 0.0ms | y | @ | -inf | (/.f64 x (/.f64 z y)) |
| 0.0ms | z | @ | -inf | (/.f64 x (/.f64 z y)) |
| 0.0ms | z | @ | inf | (/.f64 x (/.f64 z y)) |
| 0.0ms | x | @ | -inf | (/.f64 x (/.f64 z y)) |
| 1× | batch-egg-rewrite |
| 1590× | rational.json-1 |
| 1590× | rational.json-2 |
| 1590× | rational.json-4 |
| 1590× | rational.json-3 |
| 1566× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 52 | 13 |
| 2 | 172 | 13 |
| 3 | 567 | 13 |
| 4 | 2111 | 13 |
| 5 | 5761 | 13 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x (/.f64 z y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (*.f64 z (/.f64 2 y))) (/.f64 x (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (/.f64 y z)))))) (#(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 x x) (/.f64 (/.f64 y z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 (/.f64 1 (+.f64 z z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 x (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 x (/.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (/.f64 x z) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (/.f64 y z) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 x (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y z) 2) (+.f64 x x))))) (#(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 (*.f64 (/.f64 y z) 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 y)) (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 z (neg.f64 y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (/.f64 y z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (/.f64 z (neg.f64 y)))))))) |
| 1× | egg-herbie |
| 1360× | rational.json-simplify-35 |
| 1028× | rational.json-simplify-53 |
| 960× | rational.json-simplify-43 |
| 874× | rational.json-simplify-1 |
| 846× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 104 | 1079 |
| 1 | 222 | 1079 |
| 2 | 496 | 1079 |
| 3 | 1641 | 1079 |
| 4 | 4912 | 1079 |
| 5 | 7446 | 1079 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(+.f64 (/.f64 x (*.f64 z (/.f64 2 y))) (/.f64 x (*.f64 z (/.f64 2 y)))) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 1 (*.f64 x (/.f64 y z))) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 (+.f64 x x) (/.f64 (/.f64 y z) 2)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 1 (+.f64 z z)) y)) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 x)))) |
(*.f64 2 (/.f64 (*.f64 x (/.f64 y z)) 2)) |
(*.f64 2 (*.f64 (*.f64 (/.f64 x z) 1/2) y)) |
(*.f64 2 (*.f64 (/.f64 (/.f64 y z) 2) x)) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4))) |
(*.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4))) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y))) |
(*.f64 (/.f64 y z) x) |
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x))) |
(*.f64 (/.f64 x z) y) |
(*.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y))) |
(*.f64 -1 (/.f64 x (/.f64 z (neg.f64 y)))) |
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x))) |
(*.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y))) |
(*.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z)))) |
(*.f64 (/.f64 (/.f64 y z) 2) (+.f64 x x)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z)) |
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 x z)) |
(*.f64 (/.f64 x (/.f64 z (neg.f64 y))) -1) |
(*.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z)) |
(*.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z)) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4)) |
(*.f64 (/.f64 (*.f64 x (/.f64 y z)) 2) 2) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x)) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
(neg.f64 (/.f64 x (/.f64 z (neg.f64 y)))) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 0 (*.f64 x (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (/.f64 x (*.f64 z (/.f64 2 y))) (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(-.f64 (*.f64 x (/.f64 y z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 1 (*.f64 x (/.f64 y z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (/.f64 (/.f64 y z) 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 1 (+.f64 z z)) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 (*.f64 x (/.f64 y z)) 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (*.f64 (*.f64 (/.f64 x z) 1/2) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (*.f64 (/.f64 (/.f64 y z) 2) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x (*.f64 y (/.f64 2 z))) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y z) x) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x z) y) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 x (/.f64 z (neg.f64 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 1/2 (*.f64 x (*.f64 y (/.f64 2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (/.f64 y z) 2) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (/.f64 z (neg.f64 y))) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (*.f64 x (/.f64 y z)) 2) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(pow.f64 (*.f64 x (/.f64 y z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 x (/.f64 z (neg.f64 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.7b | (/.f64 y (/.f64 z x)) |
Compiled 14 to 5 computations (64.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | z | @ | -inf | (/.f64 y (/.f64 z x)) |
| 0.0ms | y | @ | 0 | (/.f64 y (/.f64 z x)) |
| 0.0ms | x | @ | 0 | (/.f64 y (/.f64 z x)) |
| 0.0ms | x | @ | inf | (/.f64 y (/.f64 z x)) |
| 0.0ms | y | @ | -inf | (/.f64 y (/.f64 z x)) |
| 1× | batch-egg-rewrite |
| 1590× | rational.json-1 |
| 1590× | rational.json-2 |
| 1590× | rational.json-4 |
| 1590× | rational.json-3 |
| 1566× | exponential.json-3 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 52 | 13 |
| 2 | 172 | 13 |
| 3 | 567 | 13 |
| 4 | 2111 | 13 |
| 5 | 5761 | 13 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 y (/.f64 z x)) |
| Outputs |
|---|
((#(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 z (/.f64 2 x))) (/.f64 y (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 y 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 (+.f64 x x) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 (/.f64 x z) 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 y) (*.f64 (/.f64 1 (+.f64 z z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 z (/.f64 2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 x (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (/.f64 x z) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (/.f64 z (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 x (/.f64 2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x z) 2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x))))) (#(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 (/.f64 1 (/.f64 1 y)) (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 z (neg.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y))))) (#(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 (neg.f64 x)))))))) |
| 1× | egg-herbie |
| 1344× | rational.json-simplify-35 |
| 1032× | rational.json-simplify-53 |
| 936× | rational.json-simplify-43 |
| 880× | rational.json-simplify-1 |
| 784× | rational.json-simplify-49 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 104 | 1079 |
| 1 | 222 | 1079 |
| 2 | 490 | 1079 |
| 3 | 1617 | 1079 |
| 4 | 4770 | 1079 |
| 5 | 7302 | 1079 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(+.f64 (/.f64 y (*.f64 z (/.f64 2 x))) (/.f64 y (*.f64 z (/.f64 2 x)))) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 1 (*.f64 y (/.f64 x z))) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 (+.f64 y y) (/.f64 (/.f64 x z) 2)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 (+.f64 z z)) x)) |
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 x)))) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2)) |
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) x)) |
(*.f64 2 (*.f64 (/.f64 (/.f64 x z) 2) y)) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4))) |
(*.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 1/2) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4))) |
(*.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y))) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 (/.f64 x z) y) |
(*.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y))) |
(*.f64 (/.f64 y z) x) |
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x))) |
(*.f64 -1 (/.f64 y (/.f64 z (neg.f64 x)))) |
(*.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y))) |
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x))) |
(*.f64 1/2 (*.f64 y (*.f64 x (/.f64 2 z)))) |
(*.f64 (/.f64 (/.f64 x z) 2) (+.f64 y y)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z)) |
(*.f64 (/.f64 y (/.f64 z (neg.f64 x))) -1) |
(*.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z)) |
(*.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z)) |
(*.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4)) |
(*.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4)) |
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
(neg.f64 (/.f64 y (/.f64 z (neg.f64 x)))) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (/.f64 y (*.f64 z (/.f64 2 x))) (/.f64 y (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 1 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (/.f64 (/.f64 x z) 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 (+.f64 z z)) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (*.f64 (/.f64 (/.f64 x z) 2) y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 (/.f64 z y) 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (*.f64 x (/.f64 2 z))) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z x) 4))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 x) (/.f64 -1 (/.f64 z y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x z) y) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x z) (/.f64 1 (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y z) x) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 y (/.f64 z (neg.f64 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 z) (/.f64 x (/.f64 1 y))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 1/2 (*.f64 y (*.f64 x (/.f64 2 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (/.f64 x z) 2) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 1 x)) (/.f64 y z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (/.f64 z (neg.f64 x))) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (/.f64 1 y)) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (/.f64 1 x)) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (*.f64 z (/.f64 2 x))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 x 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 z x) 4)) (*.f64 y 4)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 y (/.f64 z (neg.f64 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (/.f64 y (/.f64 1 x)) |
| ✓ | 4.2b | (/.f64 (/.f64 y (/.f64 1 x)) z) |
Compiled 22 to 13 computations (40.9% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | inf | (/.f64 y (/.f64 1 x)) |
| 0.0ms | x | @ | -inf | (/.f64 y (/.f64 1 x)) |
| 0.0ms | x | @ | inf | (/.f64 y (/.f64 1 x)) |
| 0.0ms | y | @ | -inf | (/.f64 y (/.f64 1 x)) |
| 0.0ms | y | @ | 0 | (/.f64 (/.f64 y (/.f64 1 x)) z) |
| 1× | batch-egg-rewrite |
| 1532× | rational.json-simplify-50 |
| 1420× | exponential.json-3 |
| 1420× | rational.json-1 |
| 1420× | rational.json-2 |
| 1420× | rational.json-4 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 32 |
| 1 | 81 | 26 |
| 2 | 275 | 20 |
| 3 | 999 | 20 |
| 4 | 4196 | 20 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (/.f64 y (/.f64 1 x)) z) |
(/.f64 y (/.f64 1 x)) |
| Outputs |
|---|
((#(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 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 x (*.f64 x (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y x) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 x x)) (/.f64 1/2 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 x x)) (*.f64 (/.f64 1 z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y x) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 x (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 2 (/.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (/.f64 2 (/.f64 z (/.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z)))))) (#(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 y) (*.f64 (/.f64 1 z) (/.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (/.f64 1 (*.f64 x (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 (+.f64 x x) z)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 2 z)) (/.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (/.f64 z (/.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (*.f64 z (/.f64 -1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 y x)) (/.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (neg.f64 z)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (neg.f64 z)) (/.f64 1 (/.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (*.f64 z (/.f64 -1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 y x) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (/.f64 y z) (/.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x x) z) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (/.f64 (+.f64 x x) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 z) (*.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 z) (/.f64 y (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 z x)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 2) (*.f64 y (/.f64 2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (/.f64 (+.f64 x x) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y))))) (#(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 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 z) (/.f64 x 2)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 -1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y x) (neg.f64 z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y z) (/.f64 -1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y x) (+.f64 z z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 2 x)) (/.f64 2 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 z) (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2)))) (#(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 1 (*.f64 x (/.f64 z y))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 x (/.f64 z y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y)))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 z (/.f64 y 4))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (/.f64 z (/.f64 y 4))) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4))) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 z (/.f64 -1 x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 -1 x)) (/.f64 y (neg.f64 z)))))) (#(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 (/.f64 y z) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (*.f64 z (/.f64 -1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (/.f64 (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y x) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 y z) (/.f64 -1 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 x (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (/.f64 2 (/.f64 4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (/.f64 1 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 1 (/.f64 4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (/.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 y (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 -1 x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 2 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x y)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 x y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (/.f64 2 y))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 4 y)) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (/.f64 4 y)) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 1 x) 4)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y x))))))) |
| 1× | egg-herbie |
| 936× | rational.json-simplify-44 |
| 928× | rational.json-simplify-54 |
| 848× | rational.json-simplify-47 |
| 832× | rational.json-simplify-35 |
| 830× | rational.json-simplify-55 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 229 | 2344 |
| 1 | 483 | 2248 |
| 2 | 1181 | 2248 |
| 3 | 4494 | 2248 |
| 4 | 7977 | 2248 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(/.f64 (*.f64 y x) z) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 y (/.f64 x z)) |
(*.f64 1 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 x (/.f64 x (*.f64 x (/.f64 z y)))) |
(*.f64 (*.f64 y x) (/.f64 1 z)) |
(*.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 (*.f64 y (+.f64 x x)) (/.f64 1/2 z)) |
(*.f64 (*.f64 y (+.f64 x x)) (*.f64 (/.f64 1 z) 1/2)) |
(*.f64 2 (/.f64 (*.f64 y x) (+.f64 z z))) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 2 (/.f64 y (*.f64 2 (/.f64 z x)))) |
(*.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 (+.f64 x x) (/.f64 2 (/.f64 z (/.f64 y 4)))) |
(*.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z x))) |
(*.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z))) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 z) (/.f64 x 2))) |
(*.f64 (/.f64 y z) x) |
(*.f64 (*.f64 x x) (/.f64 1 (*.f64 x (/.f64 z y)))) |
(*.f64 (*.f64 y (/.f64 (+.f64 x x) z)) 1/2) |
(*.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4))) |
(*.f64 (*.f64 y (/.f64 2 z)) (/.f64 x 2)) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y))))) |
(*.f64 (*.f64 x 4) (/.f64 1 (/.f64 z (/.f64 y 4)))) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4)))) |
(*.f64 (/.f64 x z) y) |
(*.f64 (/.f64 1 z) (*.f64 y x)) |
(*.f64 (neg.f64 y) (/.f64 1 (*.f64 z (/.f64 -1 x)))) |
(*.f64 (neg.f64 y) (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 (neg.f64 (*.f64 y x)) (/.f64 -1 z)) |
(*.f64 (/.f64 y (neg.f64 z)) (neg.f64 x)) |
(*.f64 (/.f64 y (neg.f64 z)) (/.f64 1 (/.f64 -1 x))) |
(*.f64 -1 (/.f64 y (*.f64 z (/.f64 -1 x)))) |
(*.f64 -1 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(*.f64 -1 (/.f64 y (/.f64 (neg.f64 z) x))) |
(*.f64 -1 (/.f64 (*.f64 y x) (neg.f64 z))) |
(*.f64 -1 (/.f64 (/.f64 y z) (/.f64 -1 x))) |
(*.f64 (neg.f64 x) (/.f64 y (neg.f64 z))) |
(*.f64 (/.f64 (+.f64 x x) z) (*.f64 y 1/2)) |
(*.f64 1/2 (*.f64 y (/.f64 (+.f64 x x) z))) |
(*.f64 (/.f64 1/2 z) (*.f64 y (+.f64 x x))) |
(*.f64 (/.f64 2 z) (/.f64 y (/.f64 2 x))) |
(*.f64 (/.f64 1/2 (/.f64 z x)) (+.f64 y y)) |
(*.f64 (/.f64 x 2) (*.f64 y (/.f64 2 z))) |
(*.f64 (*.f64 y 1/2) (/.f64 (+.f64 x x) z)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 x x))) |
(*.f64 (*.f64 (/.f64 1 z) (/.f64 x 2)) (+.f64 y y)) |
(*.f64 (/.f64 y (*.f64 z (/.f64 -1 x))) -1) |
(*.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z))) -1) |
(*.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1) |
(*.f64 (/.f64 (*.f64 y x) (neg.f64 z)) -1) |
(*.f64 (/.f64 (/.f64 y z) (/.f64 -1 x)) -1) |
(*.f64 (/.f64 (*.f64 y x) (+.f64 z z)) 2) |
(*.f64 (/.f64 y (/.f64 2 x)) (/.f64 2 z)) |
(*.f64 (/.f64 -1 z) (neg.f64 (*.f64 y x))) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 (/.f64 y (*.f64 2 (/.f64 z x))) 2) |
(*.f64 (/.f64 1 (*.f64 x (/.f64 z y))) (*.f64 x x)) |
(*.f64 (/.f64 x (*.f64 x (/.f64 z y))) x) |
(*.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2) |
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4))) |
(*.f64 (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y)))) (*.f64 x 4)) |
(*.f64 (/.f64 1 (/.f64 z (/.f64 y 4))) (*.f64 x 4)) |
(*.f64 (/.f64 2 (/.f64 z (/.f64 y 4))) (+.f64 x x)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4))) (*.f64 y 4)) |
(*.f64 (/.f64 1 (*.f64 z (/.f64 -1 x))) (neg.f64 y)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z))) (neg.f64 y)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(*.f64 (/.f64 1 (/.f64 -1 x)) (/.f64 y (neg.f64 z))) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
(neg.f64 (*.f64 (/.f64 y z) (neg.f64 x))) |
(neg.f64 (/.f64 x (/.f64 z (neg.f64 y)))) |
(neg.f64 (/.f64 y (*.f64 z (/.f64 -1 x)))) |
(neg.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(neg.f64 (/.f64 y (/.f64 (neg.f64 z) x))) |
(neg.f64 (/.f64 (*.f64 y x) (neg.f64 z))) |
(neg.f64 (/.f64 (/.f64 y z) (/.f64 -1 x))) |
(+.f64 (*.f64 y x) 0) |
(+.f64 0 (*.f64 y x)) |
(+.f64 -1 (-.f64 1 (neg.f64 (*.f64 y x)))) |
(-.f64 (*.f64 y x) 0) |
(-.f64 0 (neg.f64 (*.f64 y x))) |
(*.f64 y x) |
(*.f64 1 (*.f64 y x)) |
(*.f64 x y) |
(*.f64 x (/.f64 x (/.f64 x y))) |
(*.f64 (*.f64 y x) 1) |
(*.f64 (*.f64 y (+.f64 x x)) 1/2) |
(*.f64 2 (/.f64 y (/.f64 2 x))) |
(*.f64 2 (/.f64 (*.f64 y x) 2)) |
(*.f64 2 (/.f64 x (/.f64 2 y))) |
(*.f64 (+.f64 x x) (*.f64 y 1/2)) |
(*.f64 (+.f64 x x) (/.f64 2 (/.f64 4 y))) |
(*.f64 (+.f64 y y) (/.f64 x 2)) |
(*.f64 (+.f64 y y) (*.f64 x 1/2)) |
(*.f64 (*.f64 x x) (/.f64 1 (/.f64 x y))) |
(*.f64 (*.f64 y (*.f64 x 4)) 1/4) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (/.f64 2 y)))) |
(*.f64 (*.f64 x 4) (/.f64 1 (/.f64 4 y))) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) 4))) |
(*.f64 (neg.f64 y) (neg.f64 x)) |
(*.f64 (neg.f64 y) (/.f64 1 (/.f64 -1 x))) |
(*.f64 (neg.f64 (*.f64 y x)) -1) |
(*.f64 -1 (neg.f64 (*.f64 y x))) |
(*.f64 (neg.f64 x) (neg.f64 y)) |
(*.f64 1/2 (*.f64 y (+.f64 x x))) |
(*.f64 (/.f64 x 2) (+.f64 y y)) |
(*.f64 (*.f64 y 1/2) (+.f64 x x)) |
(*.f64 (*.f64 x 1/2) (+.f64 y y)) |
(*.f64 (/.f64 y (/.f64 2 x)) 2) |
(*.f64 1/4 (*.f64 y (*.f64 x 4))) |
(*.f64 (/.f64 1 (/.f64 -1 x)) (neg.f64 y)) |
(*.f64 (/.f64 (*.f64 y x) 2) 2) |
(*.f64 (/.f64 x (/.f64 2 y)) 2) |
(*.f64 (/.f64 1 (/.f64 x y)) (*.f64 x x)) |
(*.f64 (/.f64 x (/.f64 x y)) x) |
(*.f64 (/.f64 1 (*.f64 2 (/.f64 2 y))) (*.f64 x 4)) |
(*.f64 (/.f64 1 (/.f64 4 y)) (*.f64 x 4)) |
(*.f64 (/.f64 2 (/.f64 4 y)) (+.f64 x x)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) 4)) (*.f64 y 4)) |
(pow.f64 (*.f64 y x) 1) |
(neg.f64 (neg.f64 (*.f64 y x))) |
| Outputs |
|---|
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 (*.f64 y x) z) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 0 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(-.f64 (*.f64 y (/.f64 x z)) 0) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 1 (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 x (/.f64 x (*.f64 x (/.f64 z y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y x) (/.f64 1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (+.f64 x x)) (/.f64 1/2 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (+.f64 x x)) (*.f64 (/.f64 1 z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 (*.f64 y x) (+.f64 z z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 x (*.f64 z (/.f64 2 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 y (*.f64 2 (/.f64 z x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 2 (/.f64 (*.f64 y (/.f64 x z)) 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (*.f64 (/.f64 y z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 x x) (/.f64 2 (/.f64 z (/.f64 y 4)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 x (/.f64 1/2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 x z) 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 z) (/.f64 x 2))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y z) x) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x x) (/.f64 1 (*.f64 x (/.f64 z y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (/.f64 (+.f64 x x) z)) 1/2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y (*.f64 x 4)) (/.f64 1 (*.f64 z 4))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (*.f64 y (/.f64 2 z)) (/.f64 x 2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y))))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (*.f64 x 4) (/.f64 1 (/.f64 z (/.f64 y 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (/.f64 x z) y) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 z) (*.f64 y x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 y) (/.f64 1 (*.f64 z (/.f64 -1 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 y) (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 (*.f64 y x)) (/.f64 -1 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (neg.f64 z)) (neg.f64 x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (neg.f64 z)) (/.f64 1 (/.f64 -1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 y (*.f64 z (/.f64 -1 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 y (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 (*.f64 y x) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 -1 (/.f64 (/.f64 y z) (/.f64 -1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (neg.f64 x) (/.f64 y (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (+.f64 x x) z) (*.f64 y 1/2)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 1/2 (*.f64 y (/.f64 (+.f64 x x) z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1/2 z) (*.f64 y (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 2 z) (/.f64 y (/.f64 2 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1/2 (/.f64 z x)) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x 2) (*.f64 y (/.f64 2 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 y 1/2) (/.f64 (+.f64 x x) z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 x (/.f64 1/2 z)) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 x z) 1/2) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 x x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (*.f64 (/.f64 1 z) (/.f64 x 2)) (+.f64 y y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (*.f64 z (/.f64 -1 x))) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z))) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (/.f64 (neg.f64 z) x)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (*.f64 y x) (neg.f64 z)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (/.f64 y z) (/.f64 -1 x)) -1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (*.f64 y x) (+.f64 z z)) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (/.f64 2 x)) (/.f64 2 z)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 z) (neg.f64 (*.f64 y x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (*.f64 z (/.f64 2 y))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 y (*.f64 2 (/.f64 z x))) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 x (/.f64 z y))) (*.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 x (*.f64 x (/.f64 z y))) x) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 (*.f64 y (/.f64 x z)) 2) 2) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 x 4))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (/.f64 1 (*.f64 2 (*.f64 z (/.f64 2 y)))) (*.f64 x 4)) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (/.f64 1 (/.f64 z (/.f64 y 4))) (*.f64 x 4)) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (/.f64 2 (/.f64 z (/.f64 y 4))) (+.f64 x x)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) (*.f64 z 4))) (*.f64 y 4)) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1 (*.f64 z 4)))) |
(*.f64 y (*.f64 (*.f64 x 4) (/.f64 1/4 z))) |
(*.f64 (/.f64 1 (*.f64 z (/.f64 -1 x))) (neg.f64 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) (neg.f64 z))) (neg.f64 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 -1 (/.f64 z x)) (neg.f64 y)) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(*.f64 (/.f64 1 (/.f64 -1 x)) (/.f64 y (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(pow.f64 (*.f64 y (/.f64 x z)) 1) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (*.f64 (/.f64 y z) (neg.f64 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 x (/.f64 z (neg.f64 y)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 y (*.f64 z (/.f64 -1 x)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 y (*.f64 (/.f64 1 x) (neg.f64 z)))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 y (/.f64 (neg.f64 z) x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 (*.f64 y x) (neg.f64 z))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(neg.f64 (/.f64 (/.f64 y z) (/.f64 -1 x))) |
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(+.f64 (*.f64 y x) 0) |
(*.f64 y x) |
(+.f64 0 (*.f64 y x)) |
(*.f64 y x) |
(+.f64 -1 (-.f64 1 (neg.f64 (*.f64 y x)))) |
(*.f64 y x) |
(-.f64 (*.f64 y x) 0) |
(*.f64 y x) |
(-.f64 0 (neg.f64 (*.f64 y x))) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 1 (*.f64 y x)) |
(*.f64 y x) |
(*.f64 x y) |
(*.f64 y x) |
(*.f64 x (/.f64 x (/.f64 x y))) |
(*.f64 y x) |
(*.f64 (*.f64 y x) 1) |
(*.f64 y x) |
(*.f64 (*.f64 y (+.f64 x x)) 1/2) |
(*.f64 y x) |
(*.f64 2 (/.f64 y (/.f64 2 x))) |
(*.f64 y x) |
(*.f64 2 (/.f64 (*.f64 y x) 2)) |
(*.f64 y x) |
(*.f64 2 (/.f64 x (/.f64 2 y))) |
(*.f64 y x) |
(*.f64 (+.f64 x x) (*.f64 y 1/2)) |
(*.f64 y x) |
(*.f64 (+.f64 x x) (/.f64 2 (/.f64 4 y))) |
(*.f64 y x) |
(*.f64 (+.f64 y y) (/.f64 x 2)) |
(*.f64 (+.f64 y y) (*.f64 x 1/2)) |
(*.f64 y x) |
(*.f64 (*.f64 x x) (/.f64 1 (/.f64 x y))) |
(*.f64 y x) |
(*.f64 (*.f64 y (*.f64 x 4)) 1/4) |
(*.f64 y x) |
(*.f64 (*.f64 x 4) (/.f64 1 (*.f64 2 (/.f64 2 y)))) |
(*.f64 x (*.f64 4 (/.f64 1/2 (/.f64 2 y)))) |
(*.f64 x (*.f64 4 (/.f64 y 4))) |
(*.f64 (/.f64 y 4) (*.f64 x 4)) |
(*.f64 (*.f64 x 4) (/.f64 1 (/.f64 4 y))) |
(*.f64 x (*.f64 4 (/.f64 1/2 (/.f64 2 y)))) |
(*.f64 x (*.f64 4 (/.f64 y 4))) |
(*.f64 (/.f64 y 4) (*.f64 x 4)) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 1 x) 4))) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 4 (/.f64 1 x)))) |
(*.f64 (*.f64 y 4) (/.f64 x 4)) |
(*.f64 y (*.f64 4 (/.f64 x 4))) |
(*.f64 (neg.f64 y) (neg.f64 x)) |
(*.f64 y x) |
(*.f64 (neg.f64 y) (/.f64 1 (/.f64 -1 x))) |
(*.f64 y x) |
(*.f64 (neg.f64 (*.f64 y x)) -1) |
(*.f64 y x) |
(*.f64 -1 (neg.f64 (*.f64 y x))) |
(*.f64 y x) |
(*.f64 (neg.f64 x) (neg.f64 y)) |
(*.f64 y x) |
(*.f64 1/2 (*.f64 y (+.f64 x x))) |
(*.f64 y x) |
(*.f64 (/.f64 x 2) (+.f64 y y)) |
(*.f64 (+.f64 y y) (/.f64 x 2)) |
(*.f64 (*.f64 y 1/2) (+.f64 x x)) |
(*.f64 y x) |
(*.f64 (*.f64 x 1/2) (+.f64 y y)) |
(*.f64 y x) |
(*.f64 (/.f64 y (/.f64 2 x)) 2) |
(*.f64 y x) |
(*.f64 1/4 (*.f64 y (*.f64 x 4))) |
(*.f64 y x) |
(*.f64 (/.f64 1 (/.f64 -1 x)) (neg.f64 y)) |
(*.f64 y x) |
(*.f64 (/.f64 (*.f64 y x) 2) 2) |
(*.f64 y x) |
(*.f64 (/.f64 x (/.f64 2 y)) 2) |
(*.f64 y x) |
(*.f64 (/.f64 1 (/.f64 x y)) (*.f64 x x)) |
(*.f64 y x) |
(*.f64 (/.f64 x (/.f64 x y)) x) |
(*.f64 y x) |
(*.f64 (/.f64 1 (*.f64 2 (/.f64 2 y))) (*.f64 x 4)) |
(*.f64 x (*.f64 4 (/.f64 1/2 (/.f64 2 y)))) |
(*.f64 x (*.f64 4 (/.f64 y 4))) |
(*.f64 (/.f64 y 4) (*.f64 x 4)) |
(*.f64 (/.f64 1 (/.f64 4 y)) (*.f64 x 4)) |
(*.f64 x (*.f64 4 (/.f64 1/2 (/.f64 2 y)))) |
(*.f64 x (*.f64 4 (/.f64 y 4))) |
(*.f64 (/.f64 y 4) (*.f64 x 4)) |
(*.f64 (/.f64 2 (/.f64 4 y)) (+.f64 x x)) |
(*.f64 y x) |
(*.f64 (/.f64 1 (*.f64 (/.f64 1 x) 4)) (*.f64 y 4)) |
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 4 (/.f64 1 x)))) |
(*.f64 (*.f64 y 4) (/.f64 x 4)) |
(*.f64 y (*.f64 4 (/.f64 x 4))) |
(pow.f64 (*.f64 y x) 1) |
(*.f64 y x) |
(neg.f64 (neg.f64 (*.f64 y x))) |
(*.f64 y x) |
Compiled 2072 to 1013 computations (51.1% saved)
6 alts after pruning (0 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 235 | 0 | 235 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 235 | 6 | 241 |
| Status | Error | Program |
|---|---|---|
| ✓ | 4.4b | (/.f64 (/.f64 y (/.f64 1 x)) z) |
| ✓ | 4.3b | (/.f64 (*.f64 x y) z) |
| ✓ | 5.9b | (/.f64 y (/.f64 z x)) |
| ✓ | 6.7b | (/.f64 x (/.f64 z y)) |
| ✓ | 6.3b | (*.f64 y (/.f64 x z)) |
| ✓ | 7.0b | (*.f64 x (/.f64 y z)) |
Compiled 50 to 32 computations (36% saved)
| Inputs |
|---|
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 y (/.f64 z x)) |
(/.f64 (*.f64 x y) z) |
(/.f64 (/.f64 y (/.f64 1 x)) z) |
| Outputs |
|---|
(/.f64 (*.f64 x y) z) |
(/.f64 x (/.f64 z y)) |
(/.f64 (*.f64 x y) z) |
(*.f64 x (/.f64 y z)) |
5 calls:
| 46.0ms | (/.f64 (*.f64 x y) z) |
| 18.0ms | (*.f64 x y) |
| 14.0ms | x |
| 9.0ms | y |
| 5.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 2.9b | 3 | x |
| 3.1b | 2 | y |
| 4.3b | 1 | z |
| 1.4b | 4 | (/.f64 (*.f64 x y) z) |
| 1.2b | 4 | (*.f64 x y) |
Compiled 61 to 35 computations (42.6% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.2089501728115032e+123 | 3.782212554234298e+127 |
| 0.0ms | -0.0 | 1.2486387019063413e-307 |
| 0.0ms | -1.7132869930100533e-190 | -1.2675541350608573e-191 |
Compiled 14 to 10 computations (28.6% saved)
Total -9.9b remaining (-250.6%)
Threshold costs -9.9b (-250.6%)
| Inputs |
|---|
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
(/.f64 x (/.f64 z y)) |
(/.f64 y (/.f64 z x)) |
| Outputs |
|---|
(*.f64 x (/.f64 y z)) |
(*.f64 y (/.f64 x z)) |
3 calls:
| 15.0ms | x |
| 7.0ms | y |
| 5.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 4.1b | 2 | x |
| 4.0b | 2 | y |
| 5.9b | 1 | z |
Compiled 35 to 20 computations (42.9% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 3.4628198428782855e-159 | 8.359223582528268e-153 |
| 13.0ms | 144× | body | 256 | valid |
Compiled 176 to 118 computations (33% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 28 | 145 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 (*.f64 x y) -4013165208090495/40131652080904949243476790488282231640246122763238325954424140190648896440865179612073261537762363061729301215028215161995082338334532195000669973530974432754174985283877903733762083113741475809259744657408) (/.f64 (*.f64 x y) z) (if (<=.f64 (*.f64 x y) 0) (/.f64 x (/.f64 z y)) (if (<=.f64 (*.f64 x y) 3999999999999999910839878925616518680231937190379686309568333290649965163559359544311466235366030526739030088283805402005504) (/.f64 (*.f64 x y) z) (*.f64 x (/.f64 y z))))) |
(if (<=.f64 y 4057009606683157/943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744) (*.f64 x (/.f64 y z)) (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
| Outputs |
|---|
(if (<=.f64 (*.f64 x y) -4013165208090495/40131652080904949243476790488282231640246122763238325954424140190648896440865179612073261537762363061729301215028215161995082338334532195000669973530974432754174985283877903733762083113741475809259744657408) (/.f64 (*.f64 x y) z) (if (<=.f64 (*.f64 x y) 0) (/.f64 x (/.f64 z y)) (if (<=.f64 (*.f64 x y) 3999999999999999910839878925616518680231937190379686309568333290649965163559359544311466235366030526739030088283805402005504) (/.f64 (*.f64 x y) z) (*.f64 x (/.f64 y z))))) |
(if (<=.f64 y 4057009606683157/943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744) (*.f64 x (/.f64 y z)) (*.f64 y (/.f64 x z))) |
(*.f64 x (/.f64 y z)) |
Compiled 66 to 33 computations (50% saved)
| 2× | egg-herbie |
| 5758× | rational.json-simplify-51 |
| 5758× | rational.json-simplify-51 |
| 3396× | rational.json-simplify-1 |
| 3396× | rational.json-simplify-1 |
| 3246× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 13 | 13 |
| 2 | 24 | 13 |
| 3 | 41 | 13 |
| 4 | 74 | 13 |
| 5 | 144 | 13 |
| 6 | 335 | 13 |
| 7 | 853 | 13 |
| 8 | 1299 | 13 |
| 9 | 1477 | 13 |
| 10 | 1512 | 13 |
| 11 | 1545 | 13 |
| 12 | 1572 | 13 |
| 13 | 1599 | 13 |
| 14 | 1626 | 13 |
| 15 | 1653 | 13 |
| 16 | 1680 | 13 |
| 17 | 1707 | 13 |
| 18 | 1734 | 13 |
| 19 | 1761 | 13 |
| 20 | 1788 | 13 |
| 21 | 1815 | 13 |
| 22 | 1842 | 13 |
| 23 | 1869 | 13 |
| 24 | 7186 | 13 |
| 25 | 7401 | 13 |
| 26 | 7436 | 13 |
| 27 | 7471 | 13 |
| 28 | 7506 | 13 |
| 29 | 7541 | 13 |
| 30 | 7576 | 13 |
| 31 | 7611 | 13 |
| 32 | 7646 | 13 |
| 33 | 7681 | 13 |
| 34 | 7716 | 13 |
| 35 | 7751 | 13 |
| 36 | 7786 | 13 |
| 37 | 7821 | 13 |
| 38 | 7856 | 13 |
| 39 | 7891 | 13 |
| 0 | 7 | 13 |
| 1 | 13 | 13 |
| 2 | 24 | 13 |
| 3 | 41 | 13 |
| 4 | 74 | 13 |
| 5 | 144 | 13 |
| 6 | 335 | 13 |
| 7 | 853 | 13 |
| 8 | 1299 | 13 |
| 9 | 1477 | 13 |
| 10 | 1512 | 13 |
| 11 | 1545 | 13 |
| 12 | 1572 | 13 |
| 13 | 1599 | 13 |
| 14 | 1626 | 13 |
| 15 | 1653 | 13 |
| 16 | 1680 | 13 |
| 17 | 1707 | 13 |
| 18 | 1734 | 13 |
| 19 | 1761 | 13 |
| 20 | 1788 | 13 |
| 21 | 1815 | 13 |
| 22 | 1842 | 13 |
| 23 | 1869 | 13 |
| 24 | 7186 | 13 |
| 25 | 7401 | 13 |
| 26 | 7436 | 13 |
| 27 | 7471 | 13 |
| 28 | 7506 | 13 |
| 29 | 7541 | 13 |
| 30 | 7576 | 13 |
| 31 | 7611 | 13 |
| 32 | 7646 | 13 |
| 33 | 7681 | 13 |
| 34 | 7716 | 13 |
| 35 | 7751 | 13 |
| 36 | 7786 | 13 |
| 37 | 7821 | 13 |
| 38 | 7856 | 13 |
| 39 | 7891 | 13 |
| 1× | node limit |
| 1× | node limit |
Compiled 36 to 18 computations (50% saved)
Compiled 142 to 59 computations (58.5% saved)
Loading profile data...