
Time bar (total: 1.7s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 25% | 25% | 74.9% | 0.2% | 0% | 0% | 0% | 5 |
| 25% | 25% | 74.9% | 0.2% | 0% | 0% | 0% | 6 |
| 31.3% | 31.2% | 68.6% | 0.2% | 0% | 0% | 0% | 7 |
| 40.6% | 40.5% | 59.3% | 0.2% | 0% | 0% | 0% | 8 |
| 50% | 49.9% | 49.9% | 0.2% | 0% | 0% | 0% | 9 |
| 50% | 49.9% | 49.9% | 0.2% | 0% | 0% | 0% | 10 |
| 54.7% | 54.6% | 45.2% | 0.2% | 0% | 0% | 0% | 11 |
| 62.5% | 62.4% | 37.4% | 0.2% | 0% | 0% | 0% | 12 |
Compiled 19 to 15 computations (21.1% saved)
| 668.0ms | 8 256× | 0 | valid |
ival-mult: 285.0ms (64.1% of total)ival-sub: 81.0ms (18.2% of total)ival-div: 61.0ms (13.7% of total)ival-true: 7.0ms (1.6% of total)exact: 6.0ms (1.4% of total)ival-assert: 4.0ms (0.9% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 87 | 0 | - | 2 | (-3.7158122694369725e+49 -2.268112631105594e-106 -6.85506928813072e-219 -4.639113195924752e-210) | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| 4 | 0 | - | 0 | - | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
| 0 | 0 | - | 0 | - | (*.f64 y t) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 y #s(literal 2 binary64)) z) |
| 0 | 0 | - | 0 | - | t |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 z #s(literal 2 binary64)) z) |
| 0 | 0 | - | 0 | - | z |
| 0 | 0 | - | 0 | - | (*.f64 y #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 z #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
/.f64 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | o/o | 14 | 0 |
| ↳ | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | overflow | 28 | |
| ↳ | (*.f64 y t) | overflow | 38 | |
| ↳ | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | overflow | 92 | |
| ↳ | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | overflow | 62 | |
/.f64 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | o/n | 7 | 0 |
| ↳ | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | overflow | 28 | |
-.f64 | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | nan-rescue | 4 | 0 |
| ↳ | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | overflow | 62 | |
| ↳ | (*.f64 y t) | overflow | 38 | |
/.f64 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | n/o | 4 | 0 |
| ↳ | (*.f64 y t) | overflow | 38 | |
| ↳ | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | overflow | 92 | |
| ↳ | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | overflow | 62 | |
/.f64 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | u/n | 3 | 0 |
| ↳ | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | underflow | 32 | |
/.f64 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | n/u | 2 | 0 |
| ↳ | (*.f64 y t) | underflow | 32 | |
| ↳ | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | underflow | 6 | |
| ↳ | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | underflow | 59 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 31 | 12 |
| - | 0 | 213 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 31 | 0 | 12 |
| - | 0 | 0 | 213 |
| number | freq |
|---|---|
| 0 | 225 |
| 1 | 28 |
| 2 | 3 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 48.0ms | 512× | 0 | valid |
Compiled 216 to 56 computations (74.1% saved)
ival-mult: 16.0ms (56.6% of total)ival-sub: 8.0ms (28.3% of total)ival-div: 3.0ms (10.6% of total)ival-true: 1.0ms (3.5% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
Compiled 17 to 13 computations (23.5% saved)
Compiled 0 to 4 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 84.4% | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
Compiled 17 to 13 computations (23.5% saved)
| 1× | egg-herbie |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | |
| cost-diff | 0 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
x |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
(*.f64 y t) |
t |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
x |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
(*.f64 y t) |
t |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 0.0078125 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) | |
| accuracy | 0.8984333716604117 | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | |
| accuracy | 20.390994811426406 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| 29.0ms | 256× | 0 | valid |
Compiled 132 to 28 computations (78.8% saved)
ival-mult: 8.0ms (65.7% of total)ival-div: 2.0ms (16.4% of total)ival-sub: 2.0ms (16.4% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (* 2 (pow z 2)) (* t y)) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | z | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- (* (* z 2) z) (* y t))) |
| 3.0ms | z | @ | 0 | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- (* (* z 2) z) (* y t))) |
| 2.0ms | y | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- (* (* z 2) z) (* y t))) |
| 2.0ms | y | @ | 0 | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- (* (* z 2) z) (* y t))) |
| 2.0ms | y | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- (* (* z 2) z) (* y t))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (* 2 (pow z 2)) (* t y)) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
x |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(*.f64 y #s(literal 2 binary64)) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
Compiled 224 to 27 computations (87.9% saved)
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 6 | 4 | 10 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 6 | 5 | 11 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 84.4% | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ▶ | 2.9% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ▶ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| ▶ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| ▶ | 3.3% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
Compiled 121 to 87 computations (28.1% saved)
| 1× | egg-herbie |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) | |
| cost-diff | 0 | (*.f64 z #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | |
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) | |
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
(*.f64 y t) |
y |
t |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
(*.f64 y t) |
t |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
(*.f64 y t) |
y |
t |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
(*.f64 y t) |
t |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 0.8984333716604117 | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | |
| accuracy | 20.390994811426406 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | |
| accuracy | 61.948746892713125 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) | |
| accuracy | 0.0 | (*.f64 z #s(literal 2 binary64)) | |
| accuracy | 0.0 | (*.f64 y t) | |
| accuracy | 0.8984333716604117 | (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) | |
| accuracy | 62.16556181482013 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) | |
| accuracy | 0.0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 61.98672867291403 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) | |
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 61.89035880693172 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
| 28.0ms | 256× | 0 | valid |
Compiled 348 to 40 computations (88.5% saved)
ival-mult: 8.0ms (63.5% of total)ival-div: 2.0ms (15.9% of total)ival-sub: 2.0ms (15.9% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 y t) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(* 2 y) |
(* 2 (* y z)) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* t y) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(- (* 2 (pow z 2)) (* t y)) |
(* 2 z) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* y 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* (* z 2) z) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t)) |
| 1.0ms | z | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* y 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* (* z 2) z) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t)) |
| 1.0ms | y | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* y 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* (* z 2) z) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t)) |
| 1.0ms | y | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* y 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* (* z 2) z) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t)) |
| 1.0ms | z | @ | 0 | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* y 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* (* z 2) z) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(* 2 y) |
(* 2 (* y z)) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* t y) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(- (* 2 (pow z 2)) (* t y)) |
(* 2 z) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
(*.f64 y #s(literal 2 binary64)) |
x |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(+ x (* -1 (/ y z))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(*.f64 z #s(literal 2 binary64)) |
(* 2 y) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(* 2 (* y z)) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(* 2 (pow z 2)) |
(*.f64 y t) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 y t) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
(*.f64 y t) |
Compiled 1 014 to 44 computations (95.7% saved)
9 alts after pruning (4 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 26 | 4 | 30 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 4 | 4 |
| Done | 0 | 1 | 1 |
| Total | 26 | 9 | 35 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 84.4% | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ✓ | 2.9% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ▶ | 11.2% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
| ✓ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| ▶ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| ▶ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
| ✓ | 3.3% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
| ▶ | 3.0% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
Compiled 233 to 156 computations (33% saved)
| 1× | egg-herbie |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) | |
| cost-diff | 0 | (*.f64 z #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) | |
| cost-diff | 0 | (*.f64 z #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) | |
| cost-diff | 0 | (*.f64 y t) | |
| cost-diff | 0 | #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
y |
t |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
t |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
y |
t |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(*.f64 z #s(literal 2 binary64)) |
z |
#s(literal 2 binary64) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
t |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 20.390994811426406 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) | |
| accuracy | 60.61033990724093 | #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) | |
| accuracy | 61.948746892713125 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) | |
| accuracy | 0.0 | (*.f64 (*.f64 z #s(literal 2 binary64)) z) | |
| accuracy | 0.0 | (*.f64 z #s(literal 2 binary64)) | |
| accuracy | 61.986662586381875 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) | |
| accuracy | 0.0 | (*.f64 z #s(literal 2 binary64)) | |
| accuracy | 62.00148928519434 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) | |
| accuracy | 0.0 | (*.f64 y t) | |
| accuracy | 60.61033990724093 | #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) | |
| accuracy | 62.16556181482013 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
| 26.0ms | 256× | 0 | valid |
Compiled 330 to 40 computations (87.9% saved)
ival-mult: 9.0ms (67.9% of total)ival-div: 2.0ms (15.1% of total)ival-sub: 2.0ms (15.1% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(* t y) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(- (* 2 (pow z 2)) (* t y)) |
(* 2 z) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* y t) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* z 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2)) |
| 1.0ms | z | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* y t) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* z 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2)) |
| 1.0ms | z | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* y t) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* z 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2)) |
| 1.0ms | y | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* y t) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* z 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2)) |
| 1.0ms | z | @ | 0 | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (- (* (* z 2) z) (* y t)) (* y t) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* z 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (* (* z 2) z) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(* t y) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(- (* 2 (pow z 2)) (* t y)) |
(* 2 z) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
x |
(*.f64 y t) |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(*.f64 z #s(literal 2 binary64)) |
(+ x (* -1 (/ y z))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(* 2 (pow z 2)) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(* t y) |
(*.f64 y #s(literal 2 binary64)) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)) |
(*.f64 y t) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
(*.f64 z #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
(*.f64 (*.f64 z #s(literal 2 binary64)) z) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
Compiled 879 to 43 computations (95.1% saved)
11 alts after pruning (2 fresh and 9 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 23 | 2 | 25 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 4 | 4 |
| Done | 0 | 5 | 5 |
| Total | 23 | 11 | 34 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 84.4% | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ✓ | 2.9% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ▶ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
| ✓ | 11.2% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
| ▶ | 3.0% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
| ✓ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
| ✓ | 3.3% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
| ✓ | 3.0% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
Compiled 313 to 195 computations (37.7% saved)
| 1× | egg-herbie |
Found 8 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) | |
| cost-diff | 0 | (*.f64 y #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 y #s(literal 2 binary64)) z) | |
| cost-diff | 0 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) | |
| cost-diff | 0 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
y |
#s(literal 2 binary64) |
z |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
Found 8 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 y #s(literal 2 binary64)) | |
| accuracy | 20.390994811426406 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) | |
| accuracy | 57.644020768386426 | #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) | |
| accuracy | 61.948746892713125 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) | |
| accuracy | 20.390994811426406 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) | |
| accuracy | 60.61033990724093 | #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) | |
| accuracy | 61.47149992852961 | #s(approx (* y t) (*.f64 y #s(literal 2 binary64))) | |
| accuracy | 61.948746892713125 | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
| 26.0ms | 256× | 0 | valid |
Compiled 294 to 38 computations (87.1% saved)
ival-mult: 11.0ms (69.9% of total)ival-div: 2.0ms (12.7% of total)ival-sub: 2.0ms (12.7% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(* t y) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (* 2 (pow z 2)) (* t y)) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | z | @ | 0 | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t) (- (* (* z 2) z) (* y t)) (- (* (* z 2) z) (* y t))) |
| 1.0ms | y | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t) (- (* (* z 2) z) (* y t)) (- (* (* z 2) z) (* y t))) |
| 1.0ms | y | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t) (- (* (* z 2) z) (* y t)) (- (* (* z 2) z) (* y t))) |
| 1.0ms | z | @ | -inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t) (- (* (* z 2) z) (* y t)) (- (* (* z 2) z) (* y t))) |
| 1.0ms | z | @ | inf | ((- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* (* y 2) z) (* y 2) (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/ (* (* y 2) z) (- (* (* z 2) z) (* y t))) (* y t) (- (* (* z 2) z) (* y t)) (- (* (* z 2) z) (* y t))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
x |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
(+ x (* -1 (/ y z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
(/ y z) |
(* y (+ (* 1/2 (/ (* t y) (pow z 3))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z))) |
(* y (+ (* y (+ (* 1/2 (/ t (pow z 3))) (* y (+ (* 1/8 (/ (* (pow t 3) y) (pow z 7))) (* 1/4 (/ (pow t 2) (pow z 5))))))) (/ 1 z))) |
(* 2 (* y z)) |
(* 2 y) |
(* t y) |
(* 2 (pow z 2)) |
(+ (* -1 (* t y)) (* 2 (pow z 2))) |
(- x (* -2 (/ z t))) |
(- (+ x (* 4 (/ (pow z 3) (* (pow t 2) y)))) (* -2 (/ z t))) |
(- (+ x (* 8 (/ (pow z 5) (* (pow t 3) (pow y 2))))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(- (+ x (* 16 (/ (pow z 7) (* (pow t 4) (pow y 3))))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -2 (/ z t)) |
(+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))) |
(+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t)))) |
(+ (* -16 (/ (pow z 7) (* (pow t 4) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 3) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* (pow t 2) y))) (* -2 (/ z t))))) |
(* -1 (* t y)) |
(* y (- (* 2 (/ (pow z 2) y)) t)) |
(- (+ x (* -1 (/ (- (* -8 (/ (pow z 5) (* (pow t 3) y))) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) (* -2 (/ z t))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* 4 (/ (pow z 3) (pow t 2))) (* 8 (/ (pow z 5) (* (pow t 3) y)))) y))) |
(+ (* -2 (/ z t)) (* -1 (/ (+ (* -1 (/ (+ (* -16 (/ (pow z 7) (* (pow t 4) y))) (* -8 (/ (pow z 5) (pow t 3)))) y)) (* 4 (/ (pow z 3) (pow t 2)))) y))) |
(* -1 (* y (- (* -2 (/ (pow z 2) y)) (* -1 t)))) |
(+ x (* 2 (/ z t))) |
(+ x (* z (+ (* 4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t))))) |
(+ x (* z (+ (* (pow z 2) (+ (* 8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t))))) |
(* z (- (* -4 (/ (pow z 2) (* (pow t 2) y))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* -8 (/ (pow z 2) (* (pow t 3) (pow y 2)))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(* z (- (* (pow z 2) (- (* (pow z 2) (- (* -16 (/ (pow z 2) (* (pow t 4) (pow y 3)))) (* 8 (/ 1 (* (pow t 3) (pow y 2)))))) (* 4 (/ 1 (* (pow t 2) y))))) (* 2 (/ 1 t)))) |
(- (* 2 (pow z 2)) (* t y)) |
(- (+ x (* -1/2 (/ (* t (pow y 2)) (pow z 3)))) (/ y z)) |
(- (+ x (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 5)))) (+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z))) |
(/ (+ y (* 1/2 (/ (* t (pow y 2)) (pow z 2)))) z) |
(/ (+ y (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2))))) z) |
(/ (+ y (+ (* 1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6))) (+ (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* 1/2 (/ (* t (pow y 2)) (pow z 2)))))) z) |
(* (pow z 2) (+ 2 (* -1 (/ (* t y) (pow z 2))))) |
(+ x (* -1 (/ (- (* 1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1 y)) z))) |
(+ x (* -1 (/ (- (* 1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2))))) z))) |
(* -1 (/ (+ (* -1 y) (* -1/2 (/ (* t (pow y 2)) (pow z 2)))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))))) z)) |
(* -1 (/ (+ (* -1 y) (+ (* -1/2 (/ (* t (pow y 2)) (pow z 2))) (+ (* -1/4 (/ (* (pow t 2) (pow y 3)) (pow z 4))) (* -1/8 (/ (* (pow t 3) (pow y 4)) (pow z 6)))))) z)) |
(- x (/ y z)) |
(- (+ x (* t (- (* -1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(- (+ x (* t (- (* t (- (* -1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))) (* 1/2 (/ (pow y 2) (pow z 3)))))) (/ y z)) |
(+ (* 1/2 (/ (* t (pow y 2)) (pow z 3))) (/ y z)) |
(+ (* t (+ (* 1/4 (/ (* t (pow y 3)) (pow z 5))) (* 1/2 (/ (pow y 2) (pow z 3))))) (/ y z)) |
(+ (* t (+ (* 1/2 (/ (pow y 2) (pow z 3))) (* t (+ (* 1/8 (/ (* t (pow y 4)) (pow z 7))) (* 1/4 (/ (pow y 3) (pow z 5))))))) (/ y z)) |
(/ (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)) t) |
(/ (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z))) t) |
(/ (+ (* -16 (/ (pow z 7) (* (pow t 3) (pow y 3)))) (+ (* -8 (/ (pow z 5) (* (pow t 2) (pow y 2)))) (+ (* -4 (/ (pow z 3) (* t y))) (* -2 z)))) t) |
(* t (- (* 2 (/ (pow z 2) t)) y)) |
(+ x (* -1 (/ (- (* -4 (/ (pow z 3) (* t y))) (* 2 z)) t))) |
(+ x (* -1 (/ (- (* -1 (/ (- (* 8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t))) |
(* -1 (/ (+ (* 2 z) (* 4 (/ (pow z 3) (* t y)))) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -8 (/ (pow z 5) (* t (pow y 2)))) (* -4 (/ (pow z 3) y))) t)) (* 2 z)) t)) |
(* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow z 3) y)) (* -1 (/ (+ (* 8 (/ (pow z 5) (pow y 2))) (* 16 (/ (pow z 7) (* t (pow y 3))))) t))) t)) (* 2 z)) t)) |
(* -1 (* t (- (* -2 (/ (pow z 2) t)) (* -1 y)))) |
| Outputs |
|---|
(* -2 (/ (* y z) (- (* 2 (pow z 2)) (* t y)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(- x (* 2 (/ (* y z) (- (* 2 (pow z 2)) (* t y))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
x |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(* x (+ 1 (* -2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))))) |
(*.f64 y #s(literal 2 binary64)) |
(* -1 (* x (- (* 2 (/ (* y z) (* x (- (* 2 (pow z 2)) (* t y))))) 1))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(+ x (* -1 (/ y z))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
(+ x (* y (- (* -1/2 (/ (* t y) (pow z 3))) (/ 1 z)))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
(+ x (* y (- (* y (- (* -1/4 (/ (* (pow t 2) y) (pow z 5))) (* 1/2 (/ t (pow z 3))))) (/ 1 z)))) |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
(/ y z) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64))))) |
(*.f64 (*.f64 y #s(literal 2 binary64)) z) |
(*.f64 y #s(literal 2 binary64)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
(/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z))) |
#s(approx (* y t) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))) |
#s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
Compiled 829 to 31 computations (96.3% saved)
11 alts after pruning (0 fresh and 11 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 21 | 0 | 21 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 9 | 9 |
| Total | 21 | 11 | 32 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 84.4% | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ✓ | 2.9% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| ✓ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
| ✓ | 11.2% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
| ✓ | 3.0% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
| ✓ | 2.8% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
| ✓ | 3.1% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
| ✓ | 3.3% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
| ✓ | 3.0% | #s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
Compiled 626 to 234 computations (62.6% saved)
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
6 calls:
| 6.0ms | t |
| 4.0ms | z |
| 4.0ms | y |
| 4.0ms | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 4.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 84.4% | 1 | x |
| 84.4% | 1 | y |
| 84.4% | 1 | z |
| 84.4% | 1 | t |
| 84.4% | 1 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 84.4% | 1 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
Compiled 36 to 41 computations (-13.9% saved)
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 (*.f64 y #s(literal 2 binary64)) z)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
6 calls:
| 4.0ms | t |
| 4.0ms | y |
| 4.0ms | x |
| 4.0ms | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 4.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 11.2% | 1 | t |
| 11.2% | 1 | z |
| 11.2% | 1 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 11.2% | 1 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| 11.2% | 1 | x |
| 11.2% | 1 | y |
Compiled 36 to 41 computations (-13.9% saved)
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 z #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 y #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 (*.f64 z #s(literal 2 binary64)) z)) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) #s(approx (* y t) (*.f64 y #s(literal 2 binary64)))))) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
6 calls:
| 3.0ms | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 3.0ms | x |
| 3.0ms | z |
| 3.0ms | t |
| 3.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 3.3% | 1 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| 3.3% | 1 | t |
| 3.3% | 1 | y |
| 3.3% | 1 | z |
| 3.3% | 1 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 3.3% | 1 | x |
Compiled 36 to 41 computations (-13.9% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
| Outputs |
|---|
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
6 calls:
| 3.0ms | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 1.0ms | t |
| 1.0ms | y |
| 1.0ms | z |
| 1.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 3.0% | 1 | (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t))) |
| 3.0% | 1 | y |
| 3.0% | 1 | t |
| 3.0% | 1 | (-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
| 3.0% | 1 | x |
| 3.0% | 1 | z |
Compiled 36 to 41 computations (-13.9% saved)
| 1× | egg-herbie |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) (-.f64 (*.f64 (*.f64 z #s(literal 2 binary64)) z) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (/.f64 (*.f64 (*.f64 y #s(literal 2 binary64)) z) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t)))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) (*.f64 y #s(literal 2 binary64))) |
#s(approx (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))) #s(approx (- (* (* z 2) z) (* y t)) (*.f64 y t))) |
| 1× | done |
Compiled 106 to 27 computations (74.5% saved)
Compiled 272 to 104 computations (61.8% saved)
Loading profile data...