
Time bar (total: 2.1s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 31 to 19 computations (38.7% saved)
| 831.0ms | 8 256× | 0 | valid |
ival-mult: 276.0ms (44.5% of total)ival-add: 142.0ms (22.9% of total)ival-pow2: 105.0ms (16.9% of total)ival-sub: 78.0ms (12.6% of total)exact: 10.0ms (1.6% of total)ival-true: 6.0ms (1% of total)ival-assert: 4.0ms (0.6% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 44 | 0 | - | 0 | - | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| 44 | 0 | - | 0 | - | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 21 | 0 | - | 1 | (-2.343632709764736e+249 -5.2782494987578534e-160) | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
| 0 | 0 | - | 0 | - | (*.f64 a a) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | #s(literal 3 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
| 0 | 0 | - | 0 | - | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 b b) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 1 binary64) a) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 a a) (*.f64 b b)) |
| 0 | 0 | - | 0 | - | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | #s(literal 4 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (+.f64 #s(literal 3 binary64) a) |
| 0 | 0 | - | 0 | - | b |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
+.f64 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | nan-rescue | 44 | 0 |
| ↳ | (*.f64 b b) | overflow | 64 | |
| ↳ | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | overflow | 156 | |
| ↳ | (*.f64 a a) | overflow | 72 | |
| ↳ | (+.f64 (*.f64 a a) (*.f64 b b)) | overflow | 117 | |
| ↳ | (*.f64 b b) | overflow | 64 | |
| ↳ | (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | overflow | 132 | |
| ↳ | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | overflow | 132 | |
| ↳ | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | overflow | 83 | |
| ↳ | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | overflow | 93 | |
| ↳ | (*.f64 a a) | overflow | 72 | |
+.f64 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | nan-rescue | 44 | 0 |
| ↳ | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | overflow | 93 | |
| ↳ | (*.f64 a a) | overflow | 72 | |
| ↳ | (*.f64 b b) | overflow | 64 | |
| ↳ | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | overflow | 83 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 66 | 0 |
| - | 0 | 190 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 66 | 0 | 0 |
| - | 0 | 0 | 190 |
| number | freq |
|---|---|
| 0 | 190 |
| 1 | 44 |
| 2 | 22 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 56.0ms | 512× | 0 | valid |
Compiled 441 to 76 computations (82.8% saved)
ival-mult: 14.0ms (39.2% of total)ival-add: 10.0ms (28% of total)ival-pow2: 6.0ms (16.8% of total)ival-sub: 4.0ms (11.2% of total)exact: 1.0ms (2.8% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | egg-herbie |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
Compiled 29 to 18 computations (37.9% saved)
Compiled 0 to 2 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 74.1% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
Compiled 29 to 18 computations (37.9% saved)
| 1× | egg-herbie |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
Found 4 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 0.12890625 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| accuracy | 4.662088952771031 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 8.769531250000002 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| 31.0ms | 256× | 0 | valid |
Compiled 274 to 38 computations (86.1% saved)
ival-mult: 9.0ms (48.3% of total)ival-add: 4.0ms (21.5% of total)ival-pow2: 3.0ms (16.1% of total)ival-sub: 2.0ms (10.7% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(pow a 2) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 2) (+ 3 a)) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | b | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* b b) (+ 3 a))) |
| 2.0ms | b | @ | 0 | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* b b) (+ 3 a))) |
| 2.0ms | a | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* b b) (+ 3 a))) |
| 1.0ms | a | @ | 0 | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* b b) (+ 3 a))) |
| 1.0ms | a | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* b b) (+ 3 a))) |
| 1× | egg-herbie |
| Inputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(pow a 2) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 2) (+ 3 a)) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
Compiled 448 to 42 computations (90.6% saved)
6 alts after pruning (5 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 7 | 5 | 12 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 7 | 6 | 13 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 74.1% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| ▶ | 51.2% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
| ▶ | 47.6% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
| ▶ | 75.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| ▶ | 50.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| ▶ | 48.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
Compiled 459 to 282 computations (38.6% saved)
| 1× | egg-herbie |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| cost-diff | 0 | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | |
| cost-diff | 0 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| cost-diff | 0 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | |
| cost-diff | 0 | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) | |
| cost-diff | 0 | (*.f64 b b) | |
| cost-diff | 0 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| cost-diff | 0 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| cost-diff | 0 | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) | |
| cost-diff | 0 | (*.f64 b b) | |
| cost-diff | 0 | (*.f64 a a) | |
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) | |
| cost-diff | 0 | (*.f64 a a) | |
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
Found 20 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 4.662088952771031 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 8.769531250000002 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 15.134579789032129 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| accuracy | 0.0390625 | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | |
| accuracy | 4.662088952771031 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 35.07558113774685 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | |
| accuracy | 0.0 | (+.f64 #s(literal 3 binary64) a) | |
| accuracy | 0.0 | (*.f64 b b) | |
| accuracy | 4.662088952771031 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 43.250897220769154 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 0.0 | (*.f64 b b) | |
| accuracy | 0.0 | (*.f64 a a) | |
| accuracy | 0.00390625 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| accuracy | 33.05395267582544 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) | |
| accuracy | 0.0 | (*.f64 a a) | |
| accuracy | 0.00390625 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| accuracy | 0.12890625 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| accuracy | 15.378242195524221 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| 37.0ms | 256× | 0 | valid |
Compiled 912 to 60 computations (93.4% saved)
ival-mult: 7.0ms (38% of total)ival-add: 6.0ms (32.5% of total)ival-sub: 2.0ms (10.8% of total)ival-pow2: 2.0ms (10.8% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(*.f64 b b) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+.f64 #s(literal 3 binary64) a) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(pow a 2) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(* (pow a 2) (+ 1 (* -1 a))) |
3 |
(+ 3 a) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
a |
(* a (+ 1 (* 3 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | b | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* a a) (- 1 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ 3 a)) |
| 1.0ms | b | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* a a) (- 1 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ 3 a)) |
| 1.0ms | a | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* a a) (- 1 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ 3 a)) |
| 1.0ms | a | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* a a) (- 1 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ 3 a)) |
| 1.0ms | a | @ | 0 | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (* (* a a) (- 1 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ 3 a)) |
| 1× | egg-herbie |
| Inputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(pow a 2) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(* (pow a 2) (+ 1 (* -1 a))) |
3 |
(+ 3 a) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
a |
(* a (+ 1 (* 3 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(*.f64 a a) |
(pow b 4) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(*.f64 b b) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
(pow b 2) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(+ (pow a 2) (pow b 2)) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(pow a 2) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
(+ (* 12 (pow b 2)) (pow b 4)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(* 3 (pow b 2)) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(+.f64 #s(literal 3 binary64) a) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(*.f64 b b) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+.f64 #s(literal 3 binary64) a) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(*.f64 b b) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+.f64 #s(literal 3 binary64) a) |
Compiled 3 556 to 104 computations (97.1% saved)
14 alts after pruning (9 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 53 | 9 | 62 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 1 | 1 |
| Total | 54 | 14 | 68 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 74.1% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 44.9% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) | |
| ✓ | 47.6% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
| 45.4% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) | |
| ✓ | 75.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| ✓ | 50.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| ▶ | 60.1% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
| ✓ | 48.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
| ▶ | 51.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| 27.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| ▶ | 51.2% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
| 30.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) | |
| ▶ | 27.8% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
| ▶ | 24.5% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
Compiled 1 297 to 628 computations (51.6% saved)
| 1× | egg-herbie |
Found 19 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) | |
| cost-diff | 0 | #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| cost-diff | 0 | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) | |
| cost-diff | 0 | #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) | |
| cost-diff | 0 | (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) | |
| cost-diff | 0 | (*.f64 b b) | |
| cost-diff | 0 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| cost-diff | 0 | #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | |
| cost-diff | 0 | (*.f64 b b) | |
| cost-diff | 0 | #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) | |
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
b |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
(-.f64 #s(literal 1 binary64) a) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
b |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
(-.f64 #s(literal 1 binary64) a) |
Found 19 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 15.134579789032129 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| accuracy | 15.378242195524221 | #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) | |
| accuracy | 43.250897220769154 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 33.05395267582544 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) | |
| accuracy | 35.07558113774685 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | |
| accuracy | 44.34699752941376 | #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) | |
| accuracy | 0.0 | (*.f64 b b) | |
| accuracy | 4.662088952771031 | (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 33.05395267582544 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) | |
| accuracy | 42.900340864419015 | #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 0.0 | (*.f64 b b) | |
| accuracy | 15.378242195524221 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) | |
| accuracy | 39.558083765159125 | #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) | |
| accuracy | 8.769531250000002 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 15.134579789032129 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) | |
| accuracy | 61.054934741958945 | #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
| 39.0ms | 256× | 0 | valid |
Compiled 1 536 to 71 computations (95.4% saved)
ival-mult: 8.0ms (44.6% of total)ival-add: 4.0ms (22.3% of total)ival-pow2: 3.0ms (16.7% of total)ival-sub: 2.0ms (11.1% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(pow a 2) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | b | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a)))))) |
| 2.0ms | b | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a)))))) |
| 1.0ms | a | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a)))))) |
| 1.0ms | a | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a)))))) |
| 1.0ms | b | @ | 0 | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* (* b b) (+ 3 a)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a)))))) |
| 1× | egg-herbie |
| Inputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(pow a 2) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+ (* 12 (pow b 2)) (pow b 4)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(*.f64 b b) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(pow b 4) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(pow b 2) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
(+ (pow a 2) (pow b 2)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(* 3 (pow b 2)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(pow a 2) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
(pow a 4) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b)) |
#s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
Compiled 5 265 to 131 computations (97.5% saved)
19 alts after pruning (9 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 56 | 5 | 61 |
| Fresh | 0 | 4 | 4 |
| Picked | 0 | 5 | 5 |
| Done | 0 | 5 | 5 |
| Total | 56 | 19 | 75 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 74.1% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 44.9% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) | |
| ✓ | 47.6% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
| ▶ | 45.4% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
| ✓ | 75.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| ✓ | 50.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| ✓ | 60.1% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
| ▶ | 69.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
| ✓ | 48.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
| ✓ | 51.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| 31.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) | |
| 27.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) | |
| ▶ | 27.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| ✓ | 51.2% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
| ▶ | 51.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
| 30.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) | |
| ✓ | 27.8% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
| ✓ | 24.5% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
| ▶ | 2.8% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
Compiled 1 968 to 811 computations (58.8% saved)
| 1× | egg-herbie |
Found 19 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| cost-diff | 0 | (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| cost-diff | 0 | (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) | |
| cost-diff | 0 | (*.f64 b b) | |
| cost-diff | 0 | #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) | |
| cost-diff | 0 | (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| cost-diff | 0 | (*.f64 a a) | |
| cost-diff | 0 | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | |
| cost-diff | 0 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) | |
| cost-diff | 0 | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) | |
| cost-diff | 0 | (+.f64 #s(literal 3 binary64) a) | |
| cost-diff | 0 | #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) | |
| cost-diff | 0 | (+.f64 (*.f64 a a) (*.f64 b b)) | |
| cost-diff | 0 | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | |
| cost-diff | 0 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) | |
| cost-diff | 0 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))) |
#s(literal 4 binary64) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(literal 1 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
b |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
(-.f64 #s(literal 1 binary64) a) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(*.f64 a a) |
a |
(*.f64 b b) |
b |
#s(literal 2 binary64) |
(*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))) |
#s(literal 4 binary64) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(literal 1 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
b |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
a |
(-.f64 #s(literal 1 binary64) a) |
#s(literal 1 binary64) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)) |
(*.f64 b b) |
b |
(+.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
#s(literal 1 binary64) |
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(literal 4 binary64) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
(-.f64 #s(literal 1 binary64) a) |
Found 19 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| accuracy | 15.378242195524221 | #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) | |
| accuracy | 33.05395267582544 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) | |
| accuracy | 39.545482221045205 | #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| accuracy | 43.250897220769154 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 8.769531250000002 | (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) | |
| accuracy | 9.894485838264533 | (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 15.134579789032129 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| accuracy | 39.558083765159125 | #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) | |
| accuracy | 0.0 | (-.f64 #s(literal 1 binary64) a) | |
| accuracy | 0.0 | (*.f64 a a) | |
| accuracy | 0.0390625 | (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) | |
| accuracy | 44.802284381774555 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) | |
| accuracy | 0.0 | (+.f64 #s(literal 3 binary64) a) | |
| accuracy | 48.29942972842183 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) | |
| accuracy | 61.054934741958945 | #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) | |
| accuracy | 8.769531250000002 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) | |
| accuracy | 15.134579789032129 | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) | |
| accuracy | 40.658972875793445 | #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) | |
| accuracy | 43.250897220769154 | #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
| 37.0ms | 256× | 0 | valid |
Compiled 1 800 to 70 computations (96.1% saved)
ival-mult: 7.0ms (42.6% of total)ival-add: 4.0ms (24.4% of total)ival-sub: 2.0ms (12.2% of total)ival-pow2: 2.0ms (12.2% 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 (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(literal 1 binary64) a) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
3 |
(+ 3 a) |
(pow a 2) |
(* (pow a 2) (+ 1 (* -1 a))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
1 |
(+ 1 (* -1 a)) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
a |
(* a (+ 1 (* 3 (/ 1 a)))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* -1 a) |
(* a (- (/ 1 a) 1)) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(* -1 (* a (- 1 (/ 1 a)))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | b | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ 3 a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* a a) (- 1 a)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (- 1 a) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (pow (+ (* a a) (* b b)) 2)) |
| 1.0ms | b | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ 3 a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* a a) (- 1 a)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (- 1 a) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (pow (+ (* a a) (* b b)) 2)) |
| 1.0ms | a | @ | inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ 3 a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* a a) (- 1 a)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (- 1 a) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (pow (+ (* a a) (* b b)) 2)) |
| 1.0ms | a | @ | -inf | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ 3 a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* a a) (- 1 a)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (- 1 a) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (pow (+ (* a a) (* b b)) 2)) |
| 1.0ms | b | @ | 0 | ((- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (+ (* a a) (* b b)) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (* (* b b) (+ 3 a)) (+ 3 a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (* (* a a) (- 1 a)) (* a a) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (pow (+ (* a a) (* b b)) 2) (* b b) (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+ (* a a) (* b b)) (* a a) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (- 1 a) (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (pow (+ (* a a) (* b b)) 2)) |
| 1× | egg-herbie |
| Inputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+ (* 12 (pow b 2)) (pow b 4)) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(pow b 4) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(pow b 2) |
(+ (pow a 2) (pow b 2)) |
(* 3 (pow b 2)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
3 |
(+ 3 a) |
(pow a 2) |
(* (pow a 2) (+ 1 (* -1 a))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
1 |
(+ 1 (* -1 a)) |
(pow a 4) |
(* (pow a 4) (- 1 (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ 4 (pow a 2)))) (* 4 (/ 1 a)))) |
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 3))) (/ 4 (pow a 2))))) (* 4 (/ 1 a)))) |
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2))))) |
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4))))) |
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2)))) |
(* a (pow b 2)) |
(* a (+ (* 3 (/ (pow b 2) a)) (pow b 2))) |
a |
(* a (+ 1 (* 3 (/ 1 a)))) |
(* -1 (pow a 3)) |
(* (pow a 3) (- (/ 1 a) 1)) |
(* (pow a 3) (- (+ (/ 1 a) (/ (pow b 2) (pow a 2))) 1)) |
(* (pow a 3) (- (+ (* 3 (/ (pow b 2) (pow a 3))) (+ (/ 1 a) (/ (pow b 2) (pow a 2)))) 1)) |
(* -1 a) |
(* a (- (/ 1 a) 1)) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (* 2 (pow b 2))) a))) a)))) |
(* (pow a 4) (+ 1 (* -1 (/ (+ 4 (* -1 (/ (+ 4 (+ (* 2 (pow b 2)) (* 4 (/ (pow b 2) a)))) a))) a)))) |
(* -1 (* a (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))))) |
(* -1 (* (pow a 3) (- 1 (/ 1 a)))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (/ (pow b 2) a)) a))))) |
(* -1 (* (pow a 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (+ (* -3 (/ (pow b 2) a)) (* -1 (pow b 2))) a))) a))))) |
(* -1 (* a (- 1 (/ 1 a)))) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) 1) |
(- (+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) 1) |
(+ (* 4 (* (pow a 2) (- 1 a))) (pow a 4)) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (* 4 (+ 3 a)))) (pow a 4))) |
(+ (* 4 (* (pow a 2) (- 1 a))) (+ (* (pow b 2) (+ (* 2 (pow a 2)) (+ (* 4 (+ 3 a)) (pow b 2)))) (pow a 4))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4)) |
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4)) |
(* (pow b 2) (+ 3 a)) |
(* (pow a 2) (- 1 a)) |
(+ (* (pow a 2) (- 1 a)) (* (pow b 2) (+ 3 a))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ (+ 3 a) (pow b 2)))))) |
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4)))))) (/ 1 (pow b 4)))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ (* (pow a 2) (- 1 a)) (pow b 4))) (+ (* 4 (/ (+ 3 a) (pow b 2))) (/ (pow a 4) (pow b 4))))))) |
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2))))) |
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4))))) |
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2)))) |
(* (pow b 2) (+ 3 (+ a (/ (* (pow a 2) (- 1 a)) (pow b 2))))) |
| Outputs |
|---|
(- (+ (* 12 (pow b 2)) (pow b 4)) 1) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(- (+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) 1) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) 1) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(- (+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) 1) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
(+ (* 12 (pow b 2)) (pow b 4)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
(+ (* 4 (* a (pow b 2))) (+ (* 12 (pow b 2)) (pow b 4))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (* 2 (pow b 2)))))) (pow b 4))) |
(+.f64 #s(literal 3 binary64) a) |
(+ (* 12 (pow b 2)) (+ (* a (+ (* 4 (pow b 2)) (* a (+ 4 (+ (* -4 a) (* 2 (pow b 2))))))) (pow b 4))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(pow b 4) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4)) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4)) |
(*.f64 a a) |
(pow b 2) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+ (pow a 2) (pow b 2)) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(* 3 (pow b 2)) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(+ (* 3 (pow b 2)) (* a (pow b 2))) |
(*.f64 b b) |
3 |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+ 3 a) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
(pow a 2) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(* (pow a 2) (+ 1 (* -1 a))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
(+ (* 3 (pow b 2)) (* a (+ a (pow b 2)))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(+ (* 3 (pow b 2)) (* a (+ (* a (+ 1 (* -1 a))) (pow b 2)))) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
1 |
(-.f64 #s(literal 1 binary64) a) |
(+ 1 (* -1 a)) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
(pow a 4) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(literal 1 binary64) a) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))))) |
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
(+.f64 (*.f64 a a) (*.f64 b b)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)) |
(+.f64 #s(literal 3 binary64) a) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) |
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) |
(*.f64 a a) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) |
(*.f64 b b) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
(+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)) |
#s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
#s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
(-.f64 #s(literal 1 binary64) a) |
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) |
Compiled 7 896 to 183 computations (97.7% saved)
23 alts after pruning (10 fresh and 13 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 75 | 7 | 82 |
| Fresh | 1 | 3 | 4 |
| Picked | 1 | 4 | 5 |
| Done | 1 | 9 | 10 |
| Total | 78 | 23 | 101 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 74.1% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 44.9% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) | |
| ✓ | 47.6% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
| ✓ | 45.4% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
| 45.3% | (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) | |
| ✓ | 75.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| ✓ | 60.1% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
| 65.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))) | |
| ✓ | 48.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
| ✓ | 51.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| 27.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) | |
| ✓ | 27.9% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| 30.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) | |
| 22.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| 32.1% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) | |
| 43.5% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) | |
| ✓ | 51.2% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
| ✓ | 51.4% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
| 54.0% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) | |
| 30.7% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) | |
| ✓ | 27.8% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
| ✓ | 24.5% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
| ✓ | 2.8% | #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
Compiled 3 718 to 800 computations (78.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
5 calls:
| 8.0ms | a |
| 7.0ms | b |
| 7.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 6.0ms | (*.f64 b b) |
| 6.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.9% | 3 | a |
| 94.2% | 3 | b |
| 99.9% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 99.9% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 94.1% | 2 | (*.f64 b b) |
Compiled 61 to 42 computations (31.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
2 calls:
| 7.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 6.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.3% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 99.3% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 56 to 35 computations (37.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))) |
2 calls:
| 6.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 5.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.3% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 99.3% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 56 to 35 computations (37.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) #s(approx (+ 3 a) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b)))))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
5 calls:
| 11.0ms | a |
| 6.0ms | b |
| 5.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 5.0ms | (*.f64 b b) |
| 5.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 69.4% | 3 | b |
| 73.1% | 4 | (*.f64 b b) |
| 81.8% | 5 | a |
| 82.3% | 4 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 82.3% | 4 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 61 to 42 computations (31.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 #s(approx (* (* a a) (- 1 a)) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) #s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))))))))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
2 calls:
| 5.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 5.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 80.7% | 3 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 80.7% | 3 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 56 to 35 computations (37.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
3 calls:
| 4.0ms | a |
| 4.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 4.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 76.0% | 3 | a |
| 75.4% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 75.4% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 57 to 37 computations (35.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a)))))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) #s(approx (- 1 a) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (* a a) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64))) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
2 calls:
| 8.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 4.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 75.2% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 75.2% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 56 to 35 computations (37.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
2 calls:
| 3.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 3.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 75.2% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 75.2% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 56 to 35 computations (37.5% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
| Outputs |
|---|
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 a a)) (*.f64 #s(literal 4 binary64) #s(approx (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))) (-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)))))) |
3 calls:
| 3.0ms | a |
| 3.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 2.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 75.8% | 3 | a |
| 71.7% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 71.7% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 57 to 37 computations (35.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
1 calls:
| 3.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 75.6% | 3 | a |
Compiled 1 to 2 computations (-100% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 #s(approx (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))) #s(literal 1 binary64)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
3 calls:
| 2.0ms | a |
| 2.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 2.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.7% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 71.7% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 61.8% | 2 | a |
Compiled 57 to 37 computations (35.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (+.f64 (*.f64 a a) (*.f64 b b))) |
5 calls:
| 7.0ms | a |
| 2.0ms | b |
| 2.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 2.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 2.0ms | (*.f64 b b) |
| Accuracy | Segments | Branch |
|---|---|---|
| 48.4% | 1 | a |
| 48.4% | 1 | b |
| 48.4% | 1 | (*.f64 b b) |
| 48.4% | 1 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 48.4% | 1 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
Compiled 61 to 42 computations (31.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (+ (* a a) (* b b)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) (*.f64 a a)) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
5 calls:
| 2.0ms | b |
| 2.0ms | a |
| 2.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 2.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 2.0ms | (*.f64 b b) |
| Accuracy | Segments | Branch |
|---|---|---|
| 47.9% | 3 | b |
| 36.8% | 2 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 36.8% | 2 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 48.0% | 3 | a |
| 47.9% | 2 | (*.f64 b b) |
Compiled 61 to 42 computations (31.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (pow (+ (* a a) (* b b)) 2) (*.f64 b b))) |
5 calls:
| 1.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 1.0ms | a |
| 1.0ms | b |
| 1.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 1.0ms | (*.f64 b b) |
| Accuracy | Segments | Branch |
|---|---|---|
| 27.8% | 1 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 27.8% | 1 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 27.8% | 1 | b |
| 27.8% | 1 | a |
| 27.8% | 1 | (*.f64 b b) |
Compiled 61 to 42 computations (31.1% saved)
| Inputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
| Outputs |
|---|
#s(approx (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1) #s(approx (* (* b b) (+ 3 a)) (+.f64 #s(literal 3 binary64) a))) |
5 calls:
| 1.0ms | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 1.0ms | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 1.0ms | a |
| 1.0ms | b |
| 1.0ms | (*.f64 b b) |
| Accuracy | Segments | Branch |
|---|---|---|
| 2.8% | 1 | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64)) |
| 2.8% | 1 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) |
| 2.8% | 1 | (*.f64 b b) |
| 2.8% | 1 | b |
| 2.8% | 1 | a |
Compiled 61 to 42 computations (31.1% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.0823185926502287e+27 | 1.4083774438591208e+50 |
Compiled 32 to 24 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.3354772668912375e-7 | 64971646116644.88 |
Compiled 32 to 24 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.3354772668912375e-7 | 64971646116644.88 |
Compiled 32 to 24 computations (25% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
| 0.0ms | 2.3476055409684038e+303 | +inf |
| 0.0ms | 1.333280931506179e+24 | 1.0823185926502287e+27 |
Compiled 32 to 24 computations (25% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
| 0.0ms | 1.333280931506179e+24 | 1.0823185926502287e+27 |
Compiled 32 to 24 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
Compiled 32 to 24 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
Compiled 32 to 24 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
Compiled 32 to 24 computations (25% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 9.017718730751677e-14 | 0.0010737409988005714 |
| 20.0ms | -0.00024160469298282705 | -1.9877696782597316e-7 |
| 28.0ms | 288× | 0 | valid |
Compiled 1 984 to 994 computations (49.9% saved)
ival-mult: 12.0ms (54.8% of total)ival-add: 4.0ms (18.3% of total)ival-pow2: 3.0ms (13.7% of total)ival-sub: 2.0ms (9.1% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 3.345528283590989e+152 | 5.502132393979964e+164 |
| 1.0ms | -0.00024160469298282705 | -1.9877696782597316e-7 |
| 14.0ms | 160× | 0 | valid |
Compiled 1 324 to 874 computations (34% saved)
ival-mult: 4.0ms (40% of total)ival-add: 3.0ms (30% of total)ival-sub: 1.0ms (10% of total)ival-pow2: 1.0ms (10% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.3354772668912375e-7 | 64971646116644.88 |
Compiled 32 to 24 computations (25% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 9.0ms | 2.9156613827141506e+256 | 6.811061948800567e+256 |
| 6.0ms | 80× | 0 | valid |
Compiled 400 to 232 computations (42% saved)
ival-mult: 2.0ms (42.9% of total)ival-sub: 1.0ms (21.4% of total)ival-add: 1.0ms (21.4% of total)ival-pow2: 1.0ms (21.4% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)Loading profile data...