
Time bar (total: 2.0s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 3 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 4 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 5 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 6 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 7 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 8 |
| 26.2% | 25% | 70.2% | 0.1% | 0% | 4.7% | 0% | 9 |
| 28.9% | 25% | 61.4% | 0.1% | 0% | 13.5% | 0% | 10 |
| 31.2% | 26.3% | 58% | 0.1% | 0% | 15.5% | 0% | 11 |
| 37.2% | 28.9% | 48.7% | 0.1% | 0% | 22.3% | 0% | 12 |
Compiled 16 to 13 computations (18.8% saved)
| 570.0ms | 8 256× | 0 | valid |
| 336.0ms | 4 641× | 0 | invalid |
ival-mult: 341.0ms (59.4% of total)ival-add: 115.0ms (20% of total)ival-sqrt: 98.0ms (17.1% of total)ival-true: 9.0ms (1.6% of total)exact: 7.0ms (1.2% of total)ival-assert: 4.0ms (0.7% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 85 | 0 | - | 2 | (-9.699447787245016e-25 -1.5683650154950208e-299 1.7975727747985802e-304) | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 9 | 0 | - | 0 | - | (+.f64 (*.f64 x y) (*.f64 x z)) |
| 9 | 0 | - | 0 | - | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 0 | 0 | - | 0 | - | z |
| 0 | 0 | - | 0 | - | (*.f64 x z) |
| 0 | 0 | - | 0 | - | (*.f64 x y) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | (*.f64 y z) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
sqrt.f64 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | oflow-rescue | 79 | 0 |
| ↳ | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | overflow | 79 | |
| ↳ | (*.f64 y z) | overflow | 39 | |
| ↳ | (+.f64 (*.f64 x y) (*.f64 x z)) | overflow | 55 | |
| ↳ | (*.f64 x z) | overflow | 36 | |
| ↳ | (*.f64 x y) | overflow | 34 | |
+.f64 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | nan-rescue | 9 | 0 |
| ↳ | (+.f64 (*.f64 x y) (*.f64 x z)) | overflow | 55 | |
| ↳ | (*.f64 x z) | overflow | 36 | |
| ↳ | (*.f64 x y) | overflow | 34 | |
| ↳ | (*.f64 y z) | overflow | 39 | |
+.f64 | (+.f64 (*.f64 x y) (*.f64 x z)) | nan-rescue | 9 | 0 |
| ↳ | (*.f64 x y) | overflow | 34 | |
| ↳ | (*.f64 x z) | overflow | 36 | |
sqrt.f64 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | uflow-rescue | 4 | 0 |
| ↳ | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | underflow | 4 | |
| ↳ | (*.f64 y z) | underflow | 28 | |
| ↳ | (+.f64 (*.f64 x y) (*.f64 x z)) | underflow | 7 | |
| ↳ | (*.f64 x z) | underflow | 27 | |
| ↳ | (*.f64 x y) | underflow | 24 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 83 | 2 |
| - | 0 | 171 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 83 | 0 | 2 |
| - | 0 | 0 | 171 |
| number | freq |
|---|---|
| 0 | 173 |
| 1 | 70 |
| 2 | 8 |
| 3 | 5 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 39.0ms | 512× | 0 | valid |
Compiled 189 to 48 computations (74.6% saved)
ival-mult: 12.0ms (57.3% of total)ival-add: 4.0ms (19.1% of total)ival-sqrt: 4.0ms (19.1% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| Outputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
Compiled 14 to 11 computations (21.4% saved)
Compiled 0 to 3 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 68.5% | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
Compiled 14 to 11 computations (21.4% saved)
| 1× | egg-herbie |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| cost-diff | 0 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| cost-diff | 0 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | |
| cost-diff | 0 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| Inputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(literal 2 binary64) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
| Outputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(literal 2 binary64) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) | |
| accuracy | 1.8125000000000002 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| accuracy | 1.8125000000000002 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| accuracy | 19.928698170426344 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 22.0ms | 256× | 0 | valid |
Compiled 116 to 24 computations (79.3% saved)
ival-mult: 9.0ms (67.1% of total)ival-add: 2.0ms (14.9% of total)ival-sqrt: 2.0ms (14.9% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* y z) |
(+ (* x (+ y z)) (* y z)) |
(* x (+ y z)) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* x (+ y (+ z (/ (* y z) x)))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* -1 (* x (+ (* -1 y) (* -1 z)))) |
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (* -1 (/ (* y z) x)))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(* x z) |
(+ (* x z) (* y (+ x z))) |
(+ (* x y) (* x z)) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* y (+ x z)) |
(* y (+ x (+ z (/ (* x z) y)))) |
(* x y) |
(* y (+ x (/ (* x z) y))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* -1 (* y (+ (* -1 x) (* -1 z)))) |
(* -1 (* y (+ (* -1 x) (+ (* -1 z) (* -1 (/ (* x z) y)))))) |
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(+ (* x y) (* z (+ x y))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* z (+ x y)) |
(* z (+ x (+ y (/ (* x y) z)))) |
(* z (+ x (/ (* x y) z))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
(* -1 (* z (+ (* -1 x) (* -1 y)))) |
(* -1 (* z (+ (* -1 x) (+ (* -1 y) (* -1 (/ (* x y) z)))))) |
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 6.0ms | y | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z))) |
| 4.0ms | x | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z))) |
| 3.0ms | z | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z))) |
| 3.0ms | x | @ | inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z))) |
| 2.0ms | y | @ | inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* y z) |
(+ (* x (+ y z)) (* y z)) |
(* x (+ y z)) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* x (+ y (+ z (/ (* y z) x)))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* -1 (* x (+ (* -1 y) (* -1 z)))) |
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (* -1 (/ (* y z) x)))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(* x z) |
(+ (* x z) (* y (+ x z))) |
(+ (* x y) (* x z)) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* y (+ x z)) |
(* y (+ x (+ z (/ (* x z) y)))) |
(* x y) |
(* y (+ x (/ (* x z) y))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* -1 (* y (+ (* -1 x) (* -1 z)))) |
(* -1 (* y (+ (* -1 x) (+ (* -1 z) (* -1 (/ (* x z) y)))))) |
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(+ (* x y) (* z (+ x y))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* z (+ x y)) |
(* z (+ x (+ y (/ (* x y) z)))) |
(* z (+ x (/ (* x y) z))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
(* -1 (* z (+ (* -1 x) (* -1 y)))) |
(* -1 (* z (+ (* -1 x) (+ (* -1 y) (* -1 (/ (* x y) z)))))) |
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
| Inputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
| Outputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
Compiled 160 to 23 computations (85.6% saved)
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 5 | 3 | 8 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 5 | 4 | 9 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 68.5% | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| ▶ | 6.5% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| ▶ | 5.8% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
| ▶ | 14.3% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
Compiled 89 to 61 computations (31.5% saved)
| 1× | egg-herbie |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| cost-diff | 0 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| cost-diff | 0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | |
| cost-diff | 0 | (*.f64 x z) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| cost-diff | 0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) | |
| cost-diff | 0 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| cost-diff | 0 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| cost-diff | 0 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | |
| cost-diff | 0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(*.f64 x y) |
x |
y |
(*.f64 x z) |
z |
(*.f64 y z) |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 1.8125000000000002 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| accuracy | 1.8125000000000002 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| accuracy | 59.65882439507276 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | |
| accuracy | 0.0 | (*.f64 x z) | |
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 1.8125000000000002 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| accuracy | 60.11585827659776 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) | |
| accuracy | 1.8125000000000002 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) | |
| accuracy | 1.8125000000000002 | (+.f64 (*.f64 x y) (*.f64 x z)) | |
| accuracy | 19.928698170426344 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) | |
| accuracy | 52.0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 25.0ms | 256× | 0 | valid |
Compiled 295 to 33 computations (88.8% saved)
ival-mult: 9.0ms (67.2% of total)ival-add: 2.0ms (14.9% of total)ival-sqrt: 2.0ms (14.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 (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(*.f64 x y) |
(*.f64 x z) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* y z) |
(+ (* x (+ y z)) (* y z)) |
(* x (+ y z)) |
(* x y) |
(* x z) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* x (+ y (+ z (/ (* y z) x)))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* -1 (* x (+ (* -1 y) (* -1 z)))) |
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (* -1 (/ (* y z) x)))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(+ (* x z) (* y (+ x z))) |
(+ (* x y) (* x z)) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* y (+ x z)) |
(* y (+ x (+ z (/ (* x z) y)))) |
(* y (+ x (/ (* x z) y))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* -1 (* y (+ (* -1 x) (* -1 z)))) |
(* -1 (* y (+ (* -1 x) (+ (* -1 z) (* -1 (/ (* x z) y)))))) |
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(+ (* x y) (* z (+ x y))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* z (+ x y)) |
(* z (+ x (+ y (/ (* x y) z)))) |
(* z (+ x (/ (* x y) z))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
(* -1 (* z (+ (* -1 x) (* -1 y)))) |
(* -1 (* z (+ (* -1 x) (+ (* -1 y) (* -1 (/ (* x y) z)))))) |
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | z | @ | inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z)) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (* x y) (* x z) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z))))) |
| 1.0ms | x | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z)) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (* x y) (* x z) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z))))) |
| 1.0ms | z | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z)) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (* x y) (* x z) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z))))) |
| 1.0ms | y | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z)) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (* x y) (* x z) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z))))) |
| 1.0ms | y | @ | inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (+ (+ (* x y) (* x z)) (* y z)) (+ (* x y) (* x z)) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (* x y) (* x z) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z))))) |
| 1× | egg-herbie |
| Inputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* y z) |
(+ (* x (+ y z)) (* y z)) |
(* x (+ y z)) |
(* x y) |
(* x z) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* x (+ y (+ z (/ (* y z) x)))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* -1 (* x (+ (* -1 y) (* -1 z)))) |
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (* -1 (/ (* y z) x)))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(+ (* x z) (* y (+ x z))) |
(+ (* x y) (* x z)) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* y (+ x z)) |
(* y (+ x (+ z (/ (* x z) y)))) |
(* y (+ x (/ (* x z) y))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* -1 (* y (+ (* -1 x) (* -1 z)))) |
(* -1 (* y (+ (* -1 x) (+ (* -1 z) (* -1 (/ (* x z) y)))))) |
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(+ (* x y) (* z (+ x y))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* z (+ x y)) |
(* z (+ x (+ y (/ (* x y) z)))) |
(* z (+ x (/ (* x y) z))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
(* -1 (* z (+ (* -1 x) (* -1 y)))) |
(* -1 (* z (+ (* -1 x) (+ (* -1 y) (* -1 (/ (* x y) z)))))) |
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
(sqrt (* y z)) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(*.f64 x y) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(*.f64 x z) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(*.f64 x y) |
(*.f64 x z) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 x z)) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
(*.f64 x y) |
(*.f64 x z) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
Compiled 588 to 29 computations (95.1% saved)
6 alts after pruning (2 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 18 | 2 | 20 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 3 | 3 |
| Done | 0 | 1 | 1 |
| Total | 18 | 6 | 24 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 68.5% | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| ✓ | 6.5% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| ✓ | 5.8% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
| ✓ | 14.3% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| ▶ | 4.8% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
| ▶ | 4.7% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
Compiled 151 to 89 computations (41.1% saved)
| 1× | egg-herbie |
Found 6 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (*.f64 x z) | |
| cost-diff | 0 | #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) | |
| cost-diff | 0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) | |
| cost-diff | 0 | (*.f64 x y) | |
| cost-diff | 0 | #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) | |
| cost-diff | 0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(*.f64 x z) |
x |
z |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(*.f64 x y) |
x |
y |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(*.f64 x z) |
x |
z |
Found 6 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.0 | (*.f64 x z) | |
| accuracy | 52.0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) | |
| accuracy | 60.90100201217389 | #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) | |
| accuracy | 0.0 | (*.f64 x y) | |
| accuracy | 52.0 | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) | |
| accuracy | 60.998747038465304 | #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
| 21.0ms | 256× | 0 | valid |
Compiled 168 to 30 computations (82.1% saved)
ival-mult: 6.0ms (44.6% of total)ival-add: 5.0ms (37.2% of total)ival-sqrt: 2.0ms (14.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 (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(*.f64 x z) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* x y) |
(* x z) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | x | @ | inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x y) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x z)) |
| 1.0ms | x | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x y) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x z)) |
| 1.0ms | y | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x y) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x z)) |
| 1.0ms | z | @ | -inf | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x y) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x z)) |
| 1.0ms | x | @ | 0 | ((* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x y) (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt (+ (+ (* x y) (* x z)) (* y z))) (* x z)) |
| 1× | egg-herbie |
| Inputs |
|---|
(* 2 (sqrt (* y z))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(sqrt (* y z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* -1/8 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z)))))) |
(+ (sqrt (* y z)) (* x (+ (* 1/2 (* (sqrt (/ 1 (* y z))) (+ y z))) (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/16 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5))))))))))) |
(* x y) |
(* x z) |
(* 2 (sqrt (* x (+ y z)))) |
(* x (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (+ (* 2 (sqrt (/ (+ y z) x))) (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(sqrt (* x (+ y z))) |
(* x (+ (sqrt (/ (+ y z) x)) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z)))))) |
(* x (+ (sqrt (/ (+ y z) x)) (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ y z) 3)))) (* (pow y 2) (pow z 2)))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ y z) 5)))) (* (pow y 3) (pow z 3)))) (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ y z)))) (* y z))))))) |
(* -2 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1)))))))) |
(* -1 (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/8 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 2 (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))) (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))))))) |
(* -1 (* (sqrt (* x (+ (* -1 y) (* -1 z)))) (sqrt -1))) |
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1)))))) |
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 5) (pow (+ (* -1 y) (* -1 z)) 3)))) (* (pow y 2) (* (pow z 2) (sqrt -1))))) (+ (* 1/16 (* (sqrt (/ 1 (* (pow x 7) (pow (+ (* -1 y) (* -1 z)) 5)))) (* (pow y 3) (* (pow z 3) (sqrt -1))))) (+ (* 1/2 (* (sqrt (/ 1 (* (pow x 3) (+ (* -1 y) (* -1 z))))) (* y (* z (sqrt -1))))) (* (sqrt (/ (+ (* -1 y) (* -1 z)) x)) (sqrt -1))))))) |
(* 2 (sqrt (* x z))) |
(+ (* 2 (sqrt (* x z))) (* (sqrt (/ 1 (* x z))) (* y (+ x z)))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(+ (* 2 (sqrt (* x z))) (* y (+ (* y (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3)))))) (* (sqrt (/ 1 (* x z))) (+ x z))))) |
(sqrt (* x z)) |
(+ (sqrt (* x z)) (* 1/2 (* (sqrt (/ 1 (* x z))) (* y (+ x z))))) |
(+ (sqrt (* x z)) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (* y (pow (+ x z) 2)))) (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z)))))) |
(+ (sqrt (* x z)) (* y (+ (* 1/2 (* (sqrt (/ 1 (* x z))) (+ x z))) (* y (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow z 3)))) (pow (+ x z) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow z 5)))) (* y (pow (+ x z) 3))))))))) |
(* 2 (sqrt (* y (+ x z)))) |
(* y (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (* -1/4 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (+ (* 2 (sqrt (/ (+ x z) y))) (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(sqrt (* y (+ x z))) |
(* y (+ (sqrt (/ (+ x z) y)) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z))))))))) |
(* y (+ (sqrt (/ (+ x z) y)) (+ (* -1/8 (* (* (pow x 2) (pow z 2)) (sqrt (/ 1 (* (pow y 5) (pow (+ x z) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow z 3)) (sqrt (/ 1 (* (pow y 7) (pow (+ x z) 5)))))) (* 1/2 (* (* x z) (sqrt (/ 1 (* (pow y 3) (+ x z)))))))))) |
(* -2 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z)))))))))) |
(* -1 (* y (+ (* -1/4 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))) (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))))))) |
(* -1 (* (sqrt (* y (+ (* -1 x) (* -1 z)))) (sqrt -1))) |
(* -1 (* y (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1)))))) |
(* -1 (* y (+ (* -1/8 (* (* (pow x 2) (* (pow z 2) (sqrt -1))) (sqrt (/ 1 (* (pow y 5) (pow (+ (* -1 x) (* -1 z)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow z 3) (sqrt -1))) (sqrt (/ 1 (* (pow y 7) (pow (+ (* -1 x) (* -1 z)) 5)))))) (+ (* 1/2 (* (* x (* z (sqrt -1))) (sqrt (/ 1 (* (pow y 3) (+ (* -1 x) (* -1 z))))))) (* (sqrt (/ (+ (* -1 x) (* -1 z)) y)) (sqrt -1))))))) |
(* 2 (sqrt (* x y))) |
(+ (* 2 (sqrt (* x y))) (* (sqrt (/ 1 (* x y))) (* z (+ x y)))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(+ (* 2 (sqrt (* x y))) (* z (+ (* z (+ (* -1/4 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/8 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3)))))) (* (sqrt (/ 1 (* x y))) (+ x y))))) |
(sqrt (* x y)) |
(+ (sqrt (* x y)) (* 1/2 (* (sqrt (/ 1 (* x y))) (* z (+ x y))))) |
(+ (sqrt (* x y)) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (* z (pow (+ x y) 2)))) (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y)))))) |
(+ (sqrt (* x y)) (* z (+ (* 1/2 (* (sqrt (/ 1 (* x y))) (+ x y))) (* z (+ (* -1/8 (* (sqrt (/ 1 (* (pow x 3) (pow y 3)))) (pow (+ x y) 2))) (* 1/16 (* (sqrt (/ 1 (* (pow x 5) (pow y 5)))) (* z (pow (+ x y) 3))))))))) |
(* 2 (sqrt (* z (+ x y)))) |
(* z (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (* -1/4 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/8 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (+ (* 2 (sqrt (/ (+ x y) z))) (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(sqrt (* z (+ x y))) |
(* z (+ (sqrt (/ (+ x y) z)) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y))))))))) |
(* z (+ (sqrt (/ (+ x y) z)) (+ (* -1/8 (* (* (pow x 2) (pow y 2)) (sqrt (/ 1 (* (pow z 5) (pow (+ x y) 3)))))) (+ (* 1/16 (* (* (pow x 3) (pow y 3)) (sqrt (/ 1 (* (pow z 7) (pow (+ x y) 5)))))) (* 1/2 (* (* x y) (sqrt (/ 1 (* (pow z 3) (+ x y)))))))))) |
(* -2 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y)))))))))) |
(* -1 (* z (+ (* -1/4 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/8 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 2 (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))) (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))))))) |
(* -1 (* (sqrt (* z (+ (* -1 x) (* -1 y)))) (sqrt -1))) |
(* -1 (* z (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1)))))) |
(* -1 (* z (+ (* -1/8 (* (* (pow x 2) (* (pow y 2) (sqrt -1))) (sqrt (/ 1 (* (pow z 5) (pow (+ (* -1 x) (* -1 y)) 3)))))) (+ (* 1/16 (* (* (pow x 3) (* (pow y 3) (sqrt -1))) (sqrt (/ 1 (* (pow z 7) (pow (+ (* -1 x) (* -1 y)) 5)))))) (+ (* 1/2 (* (* x (* y (sqrt -1))) (sqrt (/ 1 (* (pow z 3) (+ (* -1 x) (* -1 y))))))) (* (sqrt (/ (+ (* -1 x) (* -1 y)) z)) (sqrt -1))))))) |
| Outputs |
|---|
(* 2 (sqrt (* y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
(+ (* 2 (sqrt (* y z))) (* (* x (+ y z)) (sqrt (/ 1 (* y z))))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* -1/4 (* (* x (pow (+ y z) 2)) (sqrt (/ 1 (* (pow y 3) (pow z 3)))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
(*.f64 x y) |
(+ (* 2 (sqrt (* y z))) (* x (+ (* x (+ (* -1/4 (* (sqrt (/ 1 (* (pow y 3) (pow z 3)))) (pow (+ y z) 2))) (* 1/8 (* (* x (pow (+ y z) 3)) (sqrt (/ 1 (* (pow y 5) (pow z 5)))))))) (* (sqrt (/ 1 (* y z))) (+ y z))))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
(sqrt (* y z)) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(+ (sqrt (* y z)) (* 1/2 (* (* x (+ y z)) (sqrt (/ 1 (* y z)))))) |
(*.f64 x z) |
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(*.f64 x z) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y)) |
(*.f64 x y) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z)) |
(*.f64 x z) |
Compiled 340 to 22 computations (93.5% saved)
6 alts after pruning (0 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 10 | 0 | 10 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 4 | 4 |
| Total | 10 | 6 | 16 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 68.5% | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| ✓ | 6.5% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| ✓ | 5.8% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
| ✓ | 14.3% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| ✓ | 4.8% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
| ✓ | 4.7% | #s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
Compiled 302 to 115 computations (61.9% saved)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| Outputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
6 calls:
| 7.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 3.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 3.0ms | x |
| 3.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 3.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 68.5% | 1 | x |
| 68.5% | 1 | y |
| 68.5% | 1 | z |
| 68.5% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 68.5% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 68.5% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
Compiled 40 to 37 computations (7.5% saved)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
6 calls:
| 5.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 3.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 3.0ms | y |
| 2.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 2.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 14.3% | 1 | x |
| 14.3% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 14.3% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 14.3% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 14.3% | 1 | y |
| 14.3% | 1 | z |
Compiled 40 to 37 computations (7.5% saved)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
6 calls:
| 4.0ms | z |
| 2.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 2.0ms | y |
| 2.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 2.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 6.5% | 1 | z |
| 6.5% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 6.5% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 6.5% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 6.5% | 1 | y |
| 6.5% | 1 | x |
Compiled 40 to 37 computations (7.5% saved)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
6 calls:
| 2.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 2.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 2.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 2.0ms | y |
| 2.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 5.8% | 1 | x |
| 5.8% | 1 | z |
| 5.8% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 5.8% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 5.8% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 5.8% | 1 | y |
Compiled 40 to 37 computations (7.5% saved)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
6 calls:
| 4.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 1.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 1.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 1.0ms | y |
| 1.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.8% | 1 | z |
| 4.8% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 4.8% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 4.8% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 4.8% | 1 | x |
| 4.8% | 1 | y |
Compiled 40 to 37 computations (7.5% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
| Outputs |
|---|
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
6 calls:
| 1.0ms | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 1.0ms | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 1.0ms | z |
| 1.0ms | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 1.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 4.7% | 1 | z |
| 4.7% | 1 | (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
| 4.7% | 1 | (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
| 4.7% | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)) |
| 4.7% | 1 | x |
| 4.7% | 1 | y |
Compiled 40 to 37 computations (7.5% saved)
| 1× | egg-herbie |
| Inputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
| Outputs |
|---|
(*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (sqrt.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z)))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (+.f64 (*.f64 x y) (*.f64 x z)) (*.f64 y z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) (+.f64 (*.f64 x y) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x z))) |
#s(approx (* 2 (sqrt (+ (+ (* x y) (* x z)) (* y z)))) #s(approx (sqrt (+ (+ (* x y) (* x z)) (* y z))) (*.f64 x y))) |
| 1× | done |
Compiled 151 to 26 computations (82.8% saved)
Compiled 460 to 130 computations (71.7% saved)
Loading profile data...