Time bar (total: 9.2s)
| 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% | 87.4% | 0.1% | 0% | 12.5% | 0% | 5 |
| 0% | 0% | 74.9% | 0.1% | 6.2% | 18.7% | 0% | 6 |
| 4.2% | 3.1% | 71.8% | 0.1% | 6.2% | 18.7% | 0% | 7 |
| 11.4% | 7.8% | 60.8% | 0.1% | 9.4% | 21.8% | 0% | 8 |
| 18.8% | 11.7% | 50.7% | 0.1% | 9.4% | 28.1% | 0% | 9 |
| 28.1% | 17.6% | 44.9% | 0.1% | 9.4% | 28.1% | 0% | 10 |
| 38.5% | 22.8% | 36.5% | 0.1% | 10.1% | 30.4% | 0% | 11 |
| 47.4% | 26.6% | 29.5% | 0.1% | 10.1% | 33.5% | 0% | 12 |
Compiled 12 to 8 computations (33.3% saved)
| 915.0ms | 8256× | body | 256 | valid |
| 98.0ms | 1071× | body | 256 | invalid |
| 4.0ms | 40× | body | 256 | infinite |
| 2× | egglog |
| Inputs |
|---|
0 |
1 |
2 |
| Outputs |
|---|
0 |
1 |
2 |
| Inputs |
|---|
(-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
(-.f64 (*.f64 y (log.f64 (/.f64 y x))) z) |
(-.f64 (*.f64 z (log.f64 (/.f64 z y))) x) |
(-.f64 (*.f64 x (log.f64 (/.f64 x z))) y) |
| Outputs |
|---|
(-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
(fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) |
(-.f64 (*.f64 y (log.f64 (/.f64 y x))) z) |
(fma.f64 y (log.f64 (/.f64 y x)) (neg.f64 z)) |
(-.f64 (*.f64 z (log.f64 (/.f64 z y))) x) |
(fma.f64 z (log.f64 (/.f64 z y)) (neg.f64 x)) |
(-.f64 (*.f64 x (log.f64 (/.f64 x z))) y) |
(fma.f64 x (log.f64 (/.f64 x z)) (neg.f64 y)) |
Compiled 14 to 10 computations (28.6% saved)
| 1× | egglog |
| Inputs |
|---|
(-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| Outputs |
|---|
(-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
(fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) |
Compiled 19 to 9 computations (52.6% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 16.1b | (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) |
| ▶ | 16.1b | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
Compiled 22 to 14 computations (36.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| ✓ | 0.3b | (*.f64 x (log.f64 (/.f64 x y))) |
| ✓ | 15.6b | (log.f64 (/.f64 x y)) |
Compiled 27 to 7 computations (74.1% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 23.0ms | x | @ | 0 | (log.f64 (/.f64 x y)) |
| 19.0ms | x | @ | 0 | (*.f64 x (log.f64 (/.f64 x y))) |
| 17.0ms | x | @ | -inf | (log.f64 (/.f64 x y)) |
| 13.0ms | y | @ | inf | (log.f64 (/.f64 x y)) |
| 11.0ms | y | @ | -inf | (log.f64 (/.f64 x y)) |
Compiled 4400 to 2780 computations (36.8% saved)
| 1× | batch-egg-rewrite |
| 68× | egg-rr |
| 42× | egg-rr |
| 12× | egg-rr |
| Inputs |
|---|
(log.f64 (/.f64 x y)) |
(*.f64 x (log.f64 (/.f64 x y))) |
(-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (/.f64 x y))) (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2)) (cbrt.f64 (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (/.f64 x y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (/.f64 x y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (log.f64 (/.f64 x y)) 0) (/.f64 1 (/.f64 1 (log.f64 (/.f64 x y)))) (log.f64 (/.f64 x y))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (/.f64 x y))) (*.f64 x (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 x) (*.f64 (cbrt.f64 (pow.f64 x 2)) (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2))) (cbrt.f64 (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 x 2)) (log.f64 (/.f64 x y))) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x 2)) (*.f64 (log.f64 (/.f64 x y)) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2)) (*.f64 x (cbrt.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (/.f64 x y)) (cbrt.f64 x)) (cbrt.f64 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (cbrt.f64 (log.f64 (/.f64 x y)))) (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (log.f64 (/.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (+.f64 0 (*.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) 0))) (-.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (-.f64 0 (*.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) 0))) (+.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (log.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 x y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (log.f64 (/.f64 x y))) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (log.f64 (/.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (/.f64 1 (/.f64 1 (*.f64 x (log.f64 (/.f64 x y))))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (-.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) 0) (*.f64 x (log.f64 (/.f64 x y)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (*.f64 (*.f64 x (log.f64 (/.f64 x y))) (+.f64 1 (/.f64 0 (*.f64 x (log.f64 (/.f64 x y)))))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (+.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (-.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (-.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (+.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (+.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (-.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 0) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (+.f64 0 (*.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 (/.f64 x y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (log.f64 (/.f64 x y))) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) 3))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (*.f64 0 (cbrt.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))))))) (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (*.f64 0 (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (+.f64 0 (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (-.f64 (cbrt.f64 (pow.f64 z 2)) (*.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (neg.f64 (cbrt.f64 z))))) (-.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 z 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (*.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y))))))) (+.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y))))) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (*.f64 (cbrt.f64 z) (+.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y))))))) (-.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))) (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (-.f64 z (*.f64 x (log.f64 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (+.f64 3 (-.f64 z (*.f64 x (log.f64 (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (log.f64 (/.f64 x y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 z) (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (neg.f64 (cbrt.f64 (pow.f64 z 2))) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (pow.f64 z 2)) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 z (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 z) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (log.f64 (/.f64 x y))) (*.f64 x (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (*.f64 (cbrt.f64 (pow.f64 x 2)) (log.f64 (/.f64 x y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2)) (cbrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (log.f64 (/.f64 x y)))) (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 2)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 (/.f64 x y)) (cbrt.f64 x)) (cbrt.f64 (pow.f64 x 2)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 (/.f64 x y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 (/.f64 x y))) 1 (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 (/.f64 x y)) x (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 z 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (fma.f64 z z (*.f64 x (*.f64 (log.f64 (/.f64 x y)) (fma.f64 (log.f64 (/.f64 x y)) x z))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 z z (*.f64 x (*.f64 (log.f64 (/.f64 x y)) (fma.f64 (log.f64 (/.f64 x y)) x z)))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (fma.f64 z z (*.f64 x (*.f64 (log.f64 (/.f64 x y)) (fma.f64 (log.f64 (/.f64 x y)) x z))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (fma.f64 z z (*.f64 x (*.f64 (log.f64 (/.f64 x y)) (fma.f64 (log.f64 (/.f64 x y)) x z))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (log.f64 (/.f64 x y)) x z) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (pow.f64 z 2)) (fma.f64 (log.f64 (/.f64 x y)) x z)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (log.f64 (/.f64 x y))) 0) (*.f64 (*.f64 x (log.f64 (/.f64 x y))) (-.f64 1 (/.f64 (/.f64 z (log.f64 (/.f64 x y))) x))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 z) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (fma.f64 z z (*.f64 x (*.f64 (log.f64 (/.f64 x y)) (fma.f64 (log.f64 (/.f64 x y)) x z))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))) 0) (/.f64 (neg.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (-.f64 z (*.f64 x (log.f64 (/.f64 x y))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (fma.f64 (log.f64 (/.f64 x y)) x z)) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (pow.f64 z 2)) (fma.f64 (log.f64 (/.f64 x y)) x z)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 z) 0) (*.f64 (neg.f64 z) (/.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))) z)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 z (*.f64 x (log.f64 (/.f64 x y)))) 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 0) (/.f64 1 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) -1)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (+.f64 0 (-.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2) (*.f64 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (*.f64 0 (+.f64 1 (/.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 0))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (+.f64 (pow.f64 z 2) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (*.f64 (neg.f64 z) (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (-.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2) (*.f64 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z))))) 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (+.f64 0 (-.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2) (*.f64 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 z 2) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (*.f64 (neg.f64 z) (*.f64 x (neg.f64 (log.f64 (/.f64 x y))))))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (+.f64 (pow.f64 z 2) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (*.f64 (neg.f64 z) (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (+.f64 0 (-.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2) (*.f64 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 z) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 3) (pow.f64 z 3)) (+.f64 (pow.f64 z 2) (+.f64 (pow.f64 (*.f64 x (log.f64 (/.f64 x y))) 2) (*.f64 (neg.f64 z) (*.f64 x (neg.f64 (log.f64 (/.f64 x y)))))))) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2) 0) (/.f64 (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 3) (pow.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 2)) (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (*.f64 x (log.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (*.f64 (neg.f64 x) (neg.f64 (log.f64 (/.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 (/.f64 x y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (log.f64 (/.f64 x y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 z) 0) (*.f64 x (log.f64 (/.f64 x y)))))))) |
| 1× | egglog |
Loading profile data...