
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 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 5 |
| 50% | 49.9% | 49.9% | 0.2% | 0% | 0% | 0% | 6 |
| 50% | 49.9% | 49.9% | 0.2% | 0% | 0% | 0% | 7 |
| 50% | 49.9% | 49.9% | 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 |
| 75% | 74.8% | 24.9% | 0.2% | 0% | 0% | 0% | 11 |
| 75% | 74.8% | 24.9% | 0.2% | 0% | 0% | 0% | 12 |
Compiled 15 to 15 computations (0% saved)
| 542.0ms | 8 256× | 0 | valid |
ival-mult: 207.0ms (65.8% of total)ival-div: 54.0ms (17.2% of total)ival-sub: 36.0ms (11.4% of total)exact: 8.0ms (2.5% of total)ival-true: 6.0ms (1.9% of total)ival-assert: 3.0ms (1% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 17 | 0 | - | 1 | (2.556909229182799e-141 6.394129798410403e-211 -1.756917679634965e-124 -2.033172449755403e-191 -3.673990254377027e-296) | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 2 | 0 | - | 0 | - | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 0 | 0 | - | 0 | - | (*.f64 a #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | t |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
| 0 | 0 | - | 0 | - | #s(literal 9 binary64) |
| 0 | 0 | - | 0 | - | z |
| 0 | 0 | - | 0 | - | (*.f64 z #s(literal 9 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 x y) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
/.f64 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) | o/n | 14 | 0 |
| ↳ | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | overflow | 32 | |
| ↳ | (*.f64 x y) | overflow | 28 | |
| ↳ | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | overflow | 57 | |
/.f64 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) | u/n | 2 | 0 |
| ↳ | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | underflow | 25 | |
| ↳ | (*.f64 x y) | underflow | 32 | |
| ↳ | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | underflow | 5 | |
-.f64 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | nan-rescue | 2 | 0 |
| ↳ | (*.f64 x y) | overflow | 28 | |
| ↳ | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | overflow | 32 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 17 | 1 |
| - | 0 | 238 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 17 | 0 | 1 |
| - | 0 | 0 | 238 |
| number | freq |
|---|---|
| 0 | 239 |
| 1 | 16 |
| 2 | 1 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 51.0ms | 512× | 0 | valid |
Compiled 146 to 56 computations (61.6% saved)
ival-mult: 17.0ms (60.9% of total)ival-sub: 6.0ms (21.5% of total)ival-div: 3.0ms (10.8% of total)exact: 1.0ms (3.6% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
Compiled 13 to 13 computations (0% saved)
Compiled 0 to 5 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 93.4% | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
Compiled 13 to 13 computations (0% saved)
| 1× | egg-herbie |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| cost-diff | 0 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| Inputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
x |
y |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
| Outputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
x |
y |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 a #s(literal 2 binary64)) | |
| accuracy | 0.17578125 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| accuracy | 0.49999587166041165 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| accuracy | 3.9633669309635216 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 24.0ms | 256× | 0 | valid |
Compiled 88 to 28 computations (68.2% saved)
ival-mult: 11.0ms (77% of total)ival-div: 2.0ms (14% of total)ival-sub: 1.0ms (7% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 a #s(literal 2 binary64)) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (* a 2)) |
| 2.0ms | z | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (* a 2)) |
| 1.0ms | a | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (* a 2)) |
| 1.0ms | x | @ | 0 | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (* a 2)) |
| 1.0ms | a | @ | 0 | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (* a 2)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(* -9 (* t z)) |
(*.f64 x y) |
(- (* x y) (* 9 (* t z))) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(* x y) |
(*.f64 a #s(literal 2 binary64)) |
| Inputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 a #s(literal 2 binary64)) |
| Outputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 a #s(literal 2 binary64)) |
Compiled 168 to 30 computations (82.1% saved)
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 7 | 3 | 10 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 7 | 4 | 11 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 93.4% | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| ▶ | 34.9% | (/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| ▶ | 51.3% | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
| ▶ | 13.8% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
Compiled 70 to 61 computations (12.9% saved)
| 1× | egg-herbie |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 a #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) | |
| cost-diff | 0 | (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| cost-diff | 0 | (/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) | |
| cost-diff | 0 | (*.f64 a #s(literal 2 binary64)) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) | |
| cost-diff | 0 | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) | |
| cost-diff | 0 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
x |
y |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
x |
y |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.17578125 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| accuracy | 0.49999587166041165 | (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| accuracy | 3.9633669309635216 | (/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) | |
| accuracy | 61.79716514126168 | #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) | |
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 0.0 | (*.f64 a #s(literal 2 binary64)) | |
| accuracy | 3.9633669309635216 | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) | |
| accuracy | 31.81123123845215 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) | |
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 0.17578125 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| accuracy | 0.49999587166041165 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| accuracy | 54.90131995258093 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| 24.0ms | 256× | 0 | valid |
Compiled 254 to 41 computations (83.9% saved)
ival-mult: 6.0ms (65.4% of total)ival-div: 2.0ms (21.8% of total)ival-sub: 1.0ms (10.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) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 a #s(literal 2 binary64)) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | 0 | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | a | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | a | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | y | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | x | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (* (* z 9) t) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(* -9 (* t z)) |
(*.f64 x y) |
(- (* x y) (* 9 (* t z))) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(* x y) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
(* 1/2 (/ (* x y) a)) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(*.f64 a #s(literal 2 binary64)) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 a #s(literal 2 binary64)) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 x y) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 a #s(literal 2 binary64)) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
Compiled 557 to 41 computations (92.6% saved)
7 alts after pruning (4 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 19 | 4 | 23 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 2 | 3 |
| Done | 0 | 1 | 1 |
| Total | 20 | 7 | 27 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 93.4% | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 51.3% | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 13.8% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ▶ | 8.1% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ▶ | 2.3% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
| ▶ | 9.2% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ▶ | 11.4% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
Compiled 153 to 118 computations (22.9% saved)
| 1× | egg-herbie |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 a #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) | |
| cost-diff | 0 | (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) | |
| cost-diff | 0 | (*.f64 a #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) | |
| cost-diff | 0 | (*.f64 z #s(literal 9 binary64)) | |
| cost-diff | 0 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| cost-diff | 0 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
a |
#s(literal 2 binary64) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
t |
Found 13 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.17578125 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| accuracy | 0.49999587166041165 | (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| accuracy | 54.90131995258093 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) | |
| accuracy | 61.79716514126168 | #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) | |
| accuracy | 0.0 | (*.f64 a #s(literal 2 binary64)) | |
| accuracy | 62.51868300785801 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) | |
| accuracy | 0.0 | (*.f64 z #s(literal 9 binary64)) | |
| accuracy | 0.17578125 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) | |
| accuracy | 54.90131995258093 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) | |
| accuracy | 61.01588256634456 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) | |
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 31.81123123845215 | #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) | |
| accuracy | 54.90131995258093 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
| 25.0ms | 256× | 0 | valid |
Compiled 306 to 42 computations (86.3% saved)
ival-mult: 9.0ms (72.2% of total)ival-div: 2.0ms (16% of total)ival-sub: 1.0ms (8% 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) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* 9 z) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 130.0ms | y | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* (* z 9) t) (* z 9) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | a | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* (* z 9) t) (* z 9) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | z | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* (* z 9) t) (* z 9) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | z | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* (* z 9) t) (* z 9) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1.0ms | a | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* (* z 9) t) (* z 9) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (* a 2) (/ (- (* x y) (* (* z 9) t)) (* a 2)) (- (* x y) (* (* z 9) t)) (* x y)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* -9 (* t z)) |
(- (* x y) (* 9 (* t z))) |
(* x y) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* x (+ y (* -9 (/ (* t z) x)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* y (+ x (* -9 (/ (* t z) y)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* -1 (* y (+ (* -1 x) (* 9 (/ (* t z) y))))) |
(+ (* -9 (* t z)) (* x y)) |
(* 9 (* t z)) |
(* 9 z) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* z (- (/ (* x y) z) (* 9 t))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -9 t)))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* t (- (/ (* x y) t) (* 9 z))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -9 z)))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
(* 2 a) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(* -9 (* t z)) |
(*.f64 x y) |
(- (* x y) (* 9 (* t z))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(* x y) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(* 1/2 (/ (* x y) a)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(*.f64 z #s(literal 9 binary64)) |
(* x (+ y (* -9 (/ (* t z) x)))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(*.f64 a #s(literal 2 binary64)) |
(* -1 (* x (+ (* -1 y) (* 9 (/ (* t z) x))))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(* y (+ x (* -9 (/ (* t z) y)))) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
(*.f64 (*.f64 z #s(literal 9 binary64)) t) |
(*.f64 z #s(literal 9 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
(*.f64 a #s(literal 2 binary64)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
#s(approx (* x y) (*.f64 a #s(literal 2 binary64))) |
Compiled 689 to 41 computations (94% saved)
8 alts after pruning (1 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 22 | 1 | 23 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 4 | 4 |
| Done | 0 | 3 | 3 |
| Total | 22 | 8 | 30 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 93.4% | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 51.3% | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 13.8% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ✓ | 8.1% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ▶ | 3.2% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
| ✓ | 2.3% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 9.2% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ✓ | 11.4% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
Compiled 170 to 134 computations (21.2% saved)
| 1× | egg-herbie |
Found 2 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 z #s(literal 9 binary64)) | |
| cost-diff | 0 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(*.f64 z #s(literal 9 binary64)) |
z |
#s(literal 9 binary64) |
Found 2 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 z #s(literal 9 binary64)) | |
| accuracy | 61.96168892860744 | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
| 20.0ms | 256× | 0 | valid |
Compiled 42 to 31 computations (26.2% saved)
ival-mult: 10.0ms (78.4% of total)ival-div: 2.0ms (15.7% of total)ival-sub: 1.0ms (7.8% 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) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(*.f64 z #s(literal 9 binary64)) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* 9 z) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 8.0ms | y | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (* z 9)) |
| 1.0ms | a | @ | 0 | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (* z 9)) |
| 1.0ms | a | @ | inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (* z 9)) |
| 1.0ms | a | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (* z 9)) |
| 1.0ms | y | @ | -inf | ((/ (- (* x y) (* (* z 9) t)) (* a 2)) (* z 9)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* -9/2 (/ (* t z) a)) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(* 1/2 (/ (* x y) a)) |
(* x (+ (* -9/2 (/ (* t z) (* a x))) (* 1/2 (/ y a)))) |
(* -1 (* x (+ (* -1/2 (/ y a)) (* 9/2 (/ (* t z) (* a x)))))) |
(* y (+ (* -9/2 (/ (* t z) (* a y))) (* 1/2 (/ x a)))) |
(* -1 (* y (+ (* -1/2 (/ x a)) (* 9/2 (/ (* t z) (* a y)))))) |
(* 9 z) |
(* z (+ (* -9/2 (/ t a)) (* 1/2 (/ (* x y) (* a z))))) |
(* -1 (* z (+ (* -1/2 (/ (* x y) (* a z))) (* 9/2 (/ t a))))) |
(* t (+ (* -9/2 (/ z a)) (* 1/2 (/ (* x y) (* a t))))) |
(* -1 (* t (+ (* -1/2 (/ (* x y) (* a t))) (* 9/2 (/ z a))))) |
(* 1/2 (/ (- (* x y) (* 9 (* t z))) a)) |
| Outputs |
|---|
(* -9/2 (/ (* t z) a)) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(+ (* -9/2 (/ (* t z) a)) (* 1/2 (/ (* x y) a))) |
(*.f64 z #s(literal 9 binary64)) |
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(*.f64 z #s(literal 9 binary64)) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
(*.f64 z #s(literal 9 binary64)) |
Compiled 65 to 17 computations (73.8% saved)
8 alts after pruning (0 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 3 | 0 | 3 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 7 | 7 |
| Total | 3 | 8 | 11 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 93.4% | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 51.3% | (/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 13.8% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ✓ | 8.1% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ✓ | 3.2% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
| ✓ | 2.3% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
| ✓ | 9.2% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| ✓ | 11.4% | #s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
Compiled 357 to 167 computations (53.2% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
(/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
11 calls:
| 5.0ms | z |
| 4.0ms | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
| 4.0ms | (*.f64 a #s(literal 2 binary64)) |
| 3.0ms | y |
| 3.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 93.4% | 1 | x |
| 93.4% | 1 | y |
| 93.4% | 1 | z |
| 93.4% | 1 | t |
| 93.4% | 1 | a |
| 93.4% | 1 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 93.4% | 1 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 93.4% | 1 | (*.f64 x y) |
| 93.4% | 1 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
| 93.4% | 1 | (*.f64 z #s(literal 9 binary64)) |
| 93.4% | 1 | (*.f64 a #s(literal 2 binary64)) |
Compiled 41 to 76 computations (-85.4% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
(/.f64 (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
11 calls:
| 6.0ms | y |
| 4.0ms | (*.f64 x y) |
| 3.0ms | (*.f64 a #s(literal 2 binary64)) |
| 3.0ms | a |
| 3.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 51.3% | 1 | x |
| 56.2% | 3 | y |
| 61.5% | 3 | z |
| 65.6% | 3 | t |
| 56.4% | 3 | a |
| 58.0% | 3 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 56.3% | 2 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 59.0% | 3 | (*.f64 x y) |
| 72.5% | 3 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
| 61.5% | 3 | (*.f64 z #s(literal 9 binary64)) |
| 56.4% | 3 | (*.f64 a #s(literal 2 binary64)) |
Compiled 41 to 76 computations (-85.4% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
(/.f64 #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
10 calls:
| 4.0ms | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 3.0ms | (*.f64 a #s(literal 2 binary64)) |
| 3.0ms | a |
| 3.0ms | y |
| 3.0ms | (*.f64 z #s(literal 9 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 51.3% | 1 | y |
| 51.3% | 1 | a |
| 51.3% | 1 | (*.f64 a #s(literal 2 binary64)) |
| 51.3% | 1 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 51.3% | 1 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 51.3% | 1 | (*.f64 x y) |
| 51.3% | 1 | z |
| 51.3% | 1 | (*.f64 z #s(literal 9 binary64)) |
| 55.2% | 3 | t |
| 55.9% | 3 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
Compiled 40 to 71 computations (-77.5% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
11 calls:
| 4.0ms | (*.f64 x y) |
| 4.0ms | (*.f64 a #s(literal 2 binary64)) |
| 3.0ms | a |
| 3.0ms | x |
| 3.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 20.9% | 3 | a |
| 20.9% | 3 | (*.f64 a #s(literal 2 binary64)) |
| 13.8% | 1 | y |
| 17.1% | 3 | z |
| 13.8% | 1 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 13.8% | 1 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 17.1% | 3 | (*.f64 z #s(literal 9 binary64)) |
| 13.8% | 1 | x |
| 13.8% | 1 | (*.f64 x y) |
| 13.8% | 1 | t |
| 13.8% | 1 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
Compiled 41 to 76 computations (-85.4% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (-.f64 #s(approx (* x y) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
2 calls:
| 2.0ms | a |
| 2.0ms | (*.f64 a #s(literal 2 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 17.3% | 3 | a |
| 17.3% | 3 | (*.f64 a #s(literal 2 binary64)) |
Compiled 4 to 12 computations (-200% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 (*.f64 z #s(literal 9 binary64)) t))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
2 calls:
| 2.0ms | (*.f64 a #s(literal 2 binary64)) |
| 2.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 15.7% | 2 | a |
| 15.7% | 2 | (*.f64 a #s(literal 2 binary64)) |
Compiled 4 to 12 computations (-200% saved)
| Inputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 a #s(literal 2 binary64))) |
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) (*.f64 z #s(literal 9 binary64))) |
| Outputs |
|---|
#s(approx (/ (- (* x y) (* (* z 9) t)) (* a 2)) #s(approx (- (* x y) (* (* z 9) t)) (*.f64 x y))) |
11 calls:
| 3.0ms | a |
| 3.0ms | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 2.0ms | z |
| 2.0ms | (*.f64 z #s(literal 9 binary64)) |
| 2.0ms | (*.f64 a #s(literal 2 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 11.4% | 1 | (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) |
| 11.4% | 1 | (*.f64 x y) |
| 11.4% | 1 | x |
| 11.4% | 1 | t |
| 11.4% | 1 | (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z #s(literal 9 binary64)) t)) (*.f64 a #s(literal 2 binary64))) |
| 11.4% | 1 | y |
| 11.4% | 1 | (*.f64 (*.f64 z #s(literal 9 binary64)) t) |
| 11.4% | 1 | z |
| 11.4% | 1 | (*.f64 z #s(literal 9 binary64)) |
| 11.4% | 1 | a |
| 11.4% | 1 | (*.f64 a #s(literal 2 binary64)) |
Compiled 41 to 76 computations (-85.4% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.048787805860475e+98 | 5.375690861076597e+104 |
| 0.0ms | -3.9924386722336296e+65 | -3.848536181860857e+64 |
Compiled 16 to 21 computations (-31.3% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 9.101620518512806e+293 | +inf |
| 0.0ms | -inf | -3.5945814099347145e+292 |
Compiled 16 to 21 computations (-31.3% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 19.0ms | 9.323289856471039e+150 | 7.343638391605342e+162 |
| 11.0ms | -3.997699751029798e-307 | 4.26151708457075e-308 |
| 15.0ms | 272× | 0 | valid |
Compiled 880 to 664 computations (24.5% saved)
ival-mult: 5.0ms (61.7% of total)ival-div: 2.0ms (24.7% of total)ival-sub: 1.0ms (12.3% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 1.1172635271005812e-57 | 2.7651401350265946e-52 |
| 14.0ms | -7.166102412815906e-306 | -3.997699751029798e-307 |
| 18.0ms | 256× | 0 | valid |
Compiled 862 to 627 computations (27.3% saved)
ival-div: 5.0ms (43.7% of total)ival-mult: 5.0ms (43.7% of total)ival-sub: 1.0ms (8.7% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 8.0ms | -3.997699751029798e-307 | 4.26151708457075e-308 |
Compiled 408 to 273 computations (33.1% saved)
Loading profile data...