
Time bar (total: 4.4s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.7% | 0.3% | 0% | 0% | 0% | 0 |
| 100% | 99.7% | 0% | 0.3% | 0% | 0% | 0% | 1 |
Compiled 17 to 15 computations (11.8% saved)
| 682.0ms | 8 256× | 0 | valid |
ival-mult: 260.0ms (65.9% of total)ival-add: 130.0ms (32.9% of total)ival-assert: 3.0ms (0.8% of total)adjust: 2.0ms (0.5% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 24 | 0 | - | 3 | (-9.757238264178747e-190 -4.33745101504043e-271 4.3044903910514615e-133 2.7183105849096044e-128 -8.063284323572275e-180 -1.0309256559733337e+306) | (*.f64 (*.f64 a z) b) |
| 10 | 0 | - | 0 | - | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 1 | 0 | - | 0 | - | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
| 0 | 0 | - | 0 | - | (+.f64 x (*.f64 y z)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | t |
| 0 | 0 | - | 0 | - | z |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | (*.f64 a z) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (*.f64 y z) |
| 0 | 0 | - | 0 | - | (*.f64 t a) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
*.f64 | (*.f64 (*.f64 a z) b) | n*o | 11 | 0 |
+.f64 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) | nan-rescue | 10 | 0 |
| ↳ | (+.f64 x (*.f64 y z)) | overflow | 36 | |
| ↳ | (*.f64 y z) | overflow | 36 | |
| ↳ | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) | overflow | 59 | |
| ↳ | (*.f64 t a) | overflow | 25 | |
| ↳ | (*.f64 a z) | overflow | 31 | |
| ↳ | (*.f64 (*.f64 a z) b) | overflow | 42 | |
+.f64 | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) | nan-rescue | 1 | 0 |
| ↳ | (+.f64 x (*.f64 y z)) | overflow | 36 | |
| ↳ | (*.f64 y z) | overflow | 36 | |
| ↳ | (*.f64 t a) | overflow | 25 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 20 | 1 |
| - | 1 | 234 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 20 | 0 | 1 |
| - | 1 | 0 | 234 |
| number | freq |
|---|---|
| 0 | 235 |
| 1 | 20 |
| 2 | 1 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 70.0ms | 512× | 0 | valid |
Compiled 117 to 43 computations (63.2% saved)
ival-mult: 13.0ms (64.4% of total)ival-add: 6.0ms (29.7% of total)ival-true: 1.0ms (5% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 120 | 434 |
| 1 | 484 | 378 |
| 2 | 1879 | 371 |
| 3 | 3968 | 370 |
| 4 | 6161 | 370 |
| 5 | 7426 | 370 |
| 6 | 7749 | 370 |
| 7 | 7806 | 370 |
| 8 | 7833 | 370 |
| 0 | 13 | 15 |
| 0 | 20 | 15 |
| 1 | 42 | 13 |
| 2 | 126 | 13 |
| 3 | 360 | 13 |
| 4 | 750 | 13 |
| 5 | 1039 | 13 |
| 6 | 1111 | 13 |
| 7 | 1167 | 13 |
| 8 | 1206 | 13 |
| 0 | 1206 | 10 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(fma.f64 (fma.f64 b z t) a (fma.f64 z y x)) |
Compiled 15 to 13 computations (13.3% saved)
Compiled 0 to 6 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 92.1% | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
Compiled 15 to 13 computations (13.3% saved)
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
(+.f64 x (*.f64 y z)) |
x |
(*.f64 y z) |
y |
z |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
b |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y z))) |
#s(approx (+ x (* y z)) #s(hole binary64 (+ x (* y z)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 x)) |
#s(approx (+ x (* y z)) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* y z) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* t a) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 20.0ms | y | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 3.0ms | a | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | z | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 245 | 1448 |
| 0 | 256 | 1291 |
| 1 | 1565 | 1291 |
| 0 | 8811 | 1120 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
(+.f64 x (*.f64 y z)) |
x |
(*.f64 y z) |
y |
z |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y z))) |
#s(approx (+ x (* y z)) #s(hole binary64 (+ x (* y z)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 x)) |
#s(approx (+ x (* y z)) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* y z) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* t a) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
| Outputs |
|---|
(/.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a) z) b) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 (neg.f64 a) z) b) (*.f64 (*.f64 (neg.f64 a) z) b) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 (neg.f64 a) z) b))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (fma.f64 a t (fma.f64 z y x)))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 (fma.f64 b z t) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) (*.f64 (-.f64 x (*.f64 z y)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))))) (*.f64 (-.f64 x (*.f64 z y)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) (*.f64 (-.f64 x (*.f64 z y)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))))) (*.f64 (-.f64 x (*.f64 z y)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (fma.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (fma.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 (*.f64 b z) a (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 (*.f64 a z) b (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 b (*.f64 a z) (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 a (*.f64 b z) (fma.f64 a t (fma.f64 z y x))) |
(-.f64 (/.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))) |
(-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 (neg.f64 a) z) b)) |
(+.f64 (/.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (fma.f64 a t (fma.f64 z y x))) |
(+.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)) |
(+.f64 (fma.f64 z y x) (*.f64 (fma.f64 b z t) a)) |
(/.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 t) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (fma.f64 (*.f64 (neg.f64 t) a) (*.f64 (neg.f64 t) a) (*.f64 (fma.f64 z y x) (*.f64 (neg.f64 t) a))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t x) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 (fma.f64 a t x) (fma.f64 a t x) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (fma.f64 a t x) (*.f64 z y))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (fma.f64 a t (*.f64 z y)) x)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (fma.f64 z y x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (fma.f64 z y x))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (fma.f64 a t (*.f64 z y))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (pow.f64 (*.f64 a t) #s(literal 2 binary64)))) (neg.f64 (-.f64 (fma.f64 z y x) (*.f64 a t)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y))))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t)))))) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64))) (-.f64 x (fma.f64 a t (*.f64 z y)))) |
(/.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (pow.f64 (*.f64 a t) #s(literal 2 binary64))) (-.f64 (fma.f64 z y x) (*.f64 a t))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y)))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t))))) |
(fma.f64 a t (fma.f64 z y x)) |
(fma.f64 t a (fma.f64 z y x)) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (fma.f64 a t (*.f64 z y)))) (/.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (-.f64 x (fma.f64 a t (*.f64 z y))))) |
(-.f64 (/.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (fma.f64 z y x) (*.f64 a t))) (/.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (fma.f64 z y x) (*.f64 a t)))) |
(-.f64 (fma.f64 z y x) (*.f64 (neg.f64 t) a)) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y)))))) (/.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y))))))) |
(+.f64 (/.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t))))) (/.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t)))))) |
(+.f64 (fma.f64 a t x) (*.f64 z y)) |
(+.f64 (fma.f64 a t (*.f64 z y)) x) |
(+.f64 (*.f64 a t) (fma.f64 z y x)) |
(+.f64 (fma.f64 z y x) (*.f64 a t)) |
(+.f64 x (fma.f64 a t (*.f64 z y))) |
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 y) z) #s(literal 3 binary64))) (fma.f64 x x (fma.f64 (*.f64 (neg.f64 y) z) (*.f64 (neg.f64 y) z) (*.f64 x (*.f64 (neg.f64 y) z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 x (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) |
(fma.f64 z y x) |
(fma.f64 y z x) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 x (*.f64 z y)))) |
(-.f64 x (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(+.f64 (*.f64 z y) x) |
(+.f64 x (*.f64 z y)) |
x |
(*.f64 z y) |
(*.f64 y z) |
y |
z |
(*.f64 a t) |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 (*.f64 a z) b) |
(*.f64 b (*.f64 a z)) |
(*.f64 a (*.f64 b z)) |
(*.f64 a z) |
(*.f64 z a) |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (*.f64 z y))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx (+ x (* y z)) (*.f64 z y)) |
#s(approx (+ x (* y z)) (fma.f64 z y x)) |
#s(approx x x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ x (* y z)) x) |
#s(approx (+ x (* y z)) (*.f64 (fma.f64 y (/.f64 z x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ x (* y z)) (* t a)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ x (* y z)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 z y) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t x)) |
#s(approx (* y z) (*.f64 z y)) |
#s(approx y y) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 z y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) y) z) y)) |
#s(approx (+ x (* y z)) (*.f64 (+.f64 (/.f64 x y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) y) z)))) |
#s(approx (+ x (* y z)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x y) z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx z z) |
#s(approx (* (* a z) b) (*.f64 (*.f64 b z) a)) |
#s(approx (* a z) (*.f64 a z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) z) y) z)) |
#s(approx (+ x (* y z)) (*.f64 (+.f64 (/.f64 x z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) z) y)))) |
#s(approx (+ x (* y z)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 z y x)) |
#s(approx (* t a) (*.f64 a t)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 a t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) t) a) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) t) a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) a) t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) a) t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))) b))) |
Compiled 3 777 to 511 computations (86.5% saved)
11 alts after pruning (11 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 132 | 11 | 143 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 133 | 11 | 144 |
| Status | Accuracy | Program |
|---|---|---|
| 52.0% | (+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) | |
| 68.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) | |
| ▶ | 74.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
| ▶ | 55.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| 52.0% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) | |
| 48.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) | |
| ▶ | 51.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) | |
| ▶ | 29.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) | |
| ▶ | 27.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 450 to 338 computations (24.9% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 b z t) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(fma.f64 z y x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(fma.f64 b a y) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y z))) |
#s(approx (+ (* z y) x) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (* z y) x) #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 31.0ms | b | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | b | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 345 | 1907 |
| 0 | 352 | 1601 |
| 1 | 2139 | 1597 |
| 0 | 9675 | 1560 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 b z t) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(fma.f64 z y x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(fma.f64 b a y) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y z))) |
#s(approx (+ (* z y) x) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (* z y) x) #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (fma.f64 (fma.f64 a t x) (fma.f64 a t x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t x) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (fma.f64 b z t) a) x))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 (fma.f64 b z t) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (fma.f64 b z t) a) x)) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64))) (-.f64 x (*.f64 (fma.f64 b z t) a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x)))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a))))) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 a (fma.f64 b z t) x) |
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 b z t) a) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (fma.f64 b z t) a) x))) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (fma.f64 b z t) a))) (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 x (*.f64 (fma.f64 b z t) a)))) |
(-.f64 x (*.f64 (neg.f64 a) (fma.f64 b z t))) |
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x))))) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a))))) (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a)))))) |
(+.f64 (fma.f64 a t x) (*.f64 (*.f64 b z) a)) |
(+.f64 (*.f64 (fma.f64 b z t) a) x) |
(+.f64 x (*.f64 (fma.f64 b z t) a)) |
(/.f64 (neg.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64)))) (neg.f64 (-.f64 t (*.f64 b z)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 b z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64)))) (neg.f64 (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64))) (-.f64 t (*.f64 b z))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 b z) t)) |
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) |
(fma.f64 b z t) |
(fma.f64 z b t) |
(-.f64 (/.f64 (*.f64 t t) (-.f64 t (*.f64 b z))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 t (*.f64 b z)))) |
(-.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 b z) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 b z) t))) |
(-.f64 t (*.f64 (neg.f64 b) z)) |
(+.f64 (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(+.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(+.f64 (*.f64 b z) t) |
(+.f64 t (*.f64 b z)) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
(*.f64 y z) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 z y) x))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 z y) x)) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 x (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) |
(fma.f64 z y x) |
(fma.f64 y z x) |
(-.f64 (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 z y) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 z y) x))) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 x (*.f64 z y)))) |
(-.f64 x (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x))))) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(+.f64 (*.f64 z y) x) |
(+.f64 x (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(*.f64 z (fma.f64 b a y)) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z (*.f64 b a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 z (*.f64 b a)) (*.f64 z (*.f64 b a))) (*.f64 (*.f64 z y) (*.f64 z (*.f64 b a)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 z y) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) |
(fma.f64 (*.f64 b a) z (*.f64 z y)) |
(fma.f64 (*.f64 b z) a (*.f64 z y)) |
(fma.f64 b (*.f64 a z) (*.f64 z y)) |
(fma.f64 (*.f64 a z) b (*.f64 z y)) |
(fma.f64 a (*.f64 b z) (*.f64 z y)) |
(fma.f64 z y (*.f64 z (*.f64 b a))) |
(fma.f64 z y (*.f64 (*.f64 b z) a)) |
(fma.f64 y z (*.f64 z (*.f64 b a))) |
(fma.f64 y z (*.f64 (*.f64 b z) a)) |
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(-.f64 (*.f64 (*.f64 b z) a) (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)) |
(+.f64 (*.f64 z y) (*.f64 z (*.f64 b a))) |
(+.f64 (*.f64 z y) (*.f64 (*.f64 b z) a)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y y))) (neg.f64 (-.f64 (*.f64 b a) y))) |
(/.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) (neg.f64 (-.f64 y (*.f64 b a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y y)) (-.f64 (*.f64 b a) y)) |
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (-.f64 y (*.f64 b a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y)))) |
(/.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a))))) |
(fma.f64 b a y) |
(fma.f64 a b y) |
(-.f64 (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 b a) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 b a) y))) |
(-.f64 (/.f64 (*.f64 y y) (-.f64 y (*.f64 b a))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 y (*.f64 b a)))) |
(-.f64 y (*.f64 (neg.f64 a) b)) |
(+.f64 (/.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y)))) (/.f64 (pow.f64 y #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y))))) |
(+.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a))))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a)))))) |
(+.f64 (*.f64 b a) y) |
(+.f64 y (*.f64 b a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z (*.f64 a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx x x) |
#s(approx (+ (* z y) x) (*.f64 z y)) |
#s(approx (+ (* z y) x) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a (/.f64 (fma.f64 b z t) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* z y) x) x) |
#s(approx (+ (* z y) x) (*.f64 (fma.f64 y (/.f64 z x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* (+ (* b z) t) a) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 (fma.f64 b z t) a) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* z y) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 z y) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (* z y) (*.f64 z y)) |
#s(approx y y) |
#s(approx (* (+ (* b a) y) z) (*.f64 (*.f64 b z) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
#s(approx (+ (* b a) y) (fma.f64 b a y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (* z y) x) (*.f64 (+.f64 (/.f64 x y) z) y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 z y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) y) z) y)) |
#s(approx (+ (* b a) y) y) |
#s(approx (+ (* b a) y) (*.f64 (fma.f64 a (/.f64 b y) #s(literal 1 binary64)) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (* z y) x) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x y) z)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) y) z)))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 (*.f64 b a) y)) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 a t x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx z z) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (+ (* z y) x) (*.f64 (+.f64 (/.f64 x z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (+ (* z y) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (*.f64 b a) z x)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 a t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (fma.f64 b z (/.f64 x a)) t) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b z (/.f64 (*.f64 z y) a)) a)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y a) b) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (neg.f64 (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (fma.f64 b z (/.f64 x a)) t)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (*.f64 z y) a))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 a) (-.f64 (neg.f64 b) (/.f64 y a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t x) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a z (/.f64 (*.f64 z y) b)) b)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y b) a) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t x) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 z y) b))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 b) (-.f64 (neg.f64 a) (/.f64 y b)))) |
Compiled 6 557 to 746 computations (88.6% saved)
12 alts after pruning (8 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 202 | 4 | 206 |
| Fresh | 2 | 4 | 6 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 0 | 0 |
| Total | 205 | 12 | 217 |
| Status | Accuracy | Program |
|---|---|---|
| 52.0% | (+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) | |
| ▶ | 46.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
| ▶ | 52.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
| 52.0% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) | |
| ✓ | 55.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| ▶ | 48.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
| ✓ | 51.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) | |
| ▶ | 25.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 29.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ▶ | 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 27.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 446 to 328 computations (26.5% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
(*.f64 b z) |
b |
z |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(fma.f64 b z t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
(fma.f64 (*.f64 b z) a (*.f64 z y)) |
(*.f64 z y) |
y |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* y z))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a t))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (+ (* a t) (* a (* b z))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* z (+ (* a b) (/ (* a t) z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (* a t) z))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx (* a t) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* t (+ a (/ (* a (* b z)) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (* a (* b z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (* b a) #s(hole binary64 (* a b))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* b (+ (* a z) (/ (* a t) b))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* a t) b))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 17.0ms | t | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (* b z) b z a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (* b z) a) (* z y)) (* z y) y) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (* b z) b z a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (* b z) a) (* z y)) (* z y) y) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (* b z) b z a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (* b z) a) (* z y)) (* z y) y) |
| 2.0ms | b | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (* b z) b z a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (* b z) a) (* z y)) (* z y) y) |
| 2.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (* b z) b z a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (* b z) a) (* z y)) (* z y) y) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 367 | 2306 |
| 0 | 376 | 2027 |
| 1 | 2205 | 2023 |
| 0 | 9692 | 1861 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
(*.f64 b z) |
b |
z |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(fma.f64 b z t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
(fma.f64 (*.f64 b z) a (*.f64 z y)) |
(*.f64 z y) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* y z))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a t))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (+ (* a t) (* a (* b z))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* z (+ (* a b) (/ (* a t) z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (* a t) z))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx (* a t) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* t (+ a (/ (* a (* b z)) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (* a (* b z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (* b a) #s(hole binary64 (* a b))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* b (+ (* a z) (/ (* a t) b))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* a t) b))))))) |
#s(approx (+ (* (* b z) a) (* z y)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (*.f64 x (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x)) |
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x)))) |
(fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x) |
(fma.f64 a #s(approx (+ (* b z) t) (*.f64 b z)) x) |
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x))) |
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x))))) |
(+.f64 (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a) x) |
(+.f64 x (*.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
(*.f64 b z) |
(*.f64 z b) |
b |
z |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
(*.f64 t a) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
(*.f64 z #s(approx (+ (* b a) y) (*.f64 b a))) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
(*.f64 a b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(*.f64 a (fma.f64 b z t)) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 a t))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z (*.f64 a t)) |
(fma.f64 (*.f64 b z) a (*.f64 a t)) |
(fma.f64 b (*.f64 a z) (*.f64 a t)) |
(fma.f64 (*.f64 a z) b (*.f64 a t)) |
(fma.f64 a (*.f64 b z) (*.f64 a t)) |
(fma.f64 a t (*.f64 (*.f64 b z) a)) |
(fma.f64 t a (*.f64 (*.f64 b z) a)) |
(-.f64 (/.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(-.f64 (*.f64 a t) (*.f64 (neg.f64 a) (*.f64 b z))) |
(+.f64 (/.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (*.f64 a t)) |
(+.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) |
(/.f64 (neg.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64)))) (neg.f64 (-.f64 t (*.f64 b z)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 b z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64)))) (neg.f64 (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64))) (-.f64 t (*.f64 b z))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 b z) t)) |
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) |
(fma.f64 b z t) |
(fma.f64 z b t) |
(-.f64 (/.f64 (*.f64 t t) (-.f64 t (*.f64 b z))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 t (*.f64 b z)))) |
(-.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 b z) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 b z) t))) |
(-.f64 t (*.f64 (neg.f64 b) z)) |
(+.f64 (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(+.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(+.f64 (*.f64 b z) t) |
(+.f64 t (*.f64 b z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(*.f64 z (fma.f64 b a y)) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z (*.f64 b a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 z (*.f64 b a)) (*.f64 z (*.f64 b a))) (*.f64 (*.f64 z y) (*.f64 z (*.f64 b a)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 z y) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) |
(fma.f64 (*.f64 b a) z (*.f64 z y)) |
(fma.f64 (*.f64 b z) a (*.f64 z y)) |
(fma.f64 b (*.f64 a z) (*.f64 z y)) |
(fma.f64 (*.f64 a z) b (*.f64 z y)) |
(fma.f64 a (*.f64 b z) (*.f64 z y)) |
(fma.f64 z y (*.f64 z (*.f64 b a))) |
(fma.f64 z y (*.f64 (*.f64 b z) a)) |
(fma.f64 y z (*.f64 z (*.f64 b a))) |
(fma.f64 y z (*.f64 (*.f64 b z) a)) |
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(-.f64 (*.f64 (*.f64 b z) a) (*.f64 (neg.f64 z) y)) |
(-.f64 (*.f64 (*.f64 b z) a) (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)) |
(+.f64 (*.f64 z y) (*.f64 z (*.f64 b a))) |
(+.f64 (*.f64 z y) (*.f64 (*.f64 b z) a)) |
(*.f64 z y) |
(*.f64 y z) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z (*.f64 a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx x x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a (/.f64 (fma.f64 b z t) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* (+ (* b z) t) a) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 (fma.f64 b z t) a) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
#s(approx (+ (* b a) y) (fma.f64 b a y)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (* z y) (*.f64 z y)) |
#s(approx y y) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 z y)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) y) z) y)) |
#s(approx (+ (* b a) y) y) |
#s(approx (+ (* b a) y) (*.f64 (fma.f64 a (/.f64 b y) #s(literal 1 binary64)) y)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 z y)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) y) z)))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 (*.f64 b a) y)) #s(literal 1 binary64)))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) y) z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 a t x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx (* b z) (*.f64 b z)) |
#s(approx z z) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (* (+ (* b z) t) a) (*.f64 a t)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (*.f64 b z) a)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b a (/.f64 (*.f64 a t) z)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (*.f64 a t) z))))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (*.f64 b a) z x)) |
#s(approx (* a t) (*.f64 a t)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 a t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) t) a) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) t) a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx a a) |
#s(approx (* b a) (*.f64 b a)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (fma.f64 b z (/.f64 x a)) t) a)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b z (/.f64 (*.f64 z y) a)) a)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y a) b) a)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 b z (/.f64 (*.f64 z y) a)) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (neg.f64 (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (fma.f64 b z (/.f64 x a)) t)))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (*.f64 z y) a))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 a) (-.f64 (neg.f64 b) (/.f64 y a)))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (*.f64 z y) a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t x) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 a z (/.f64 (*.f64 z y) b)) b)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y b) a) b)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 a (/.f64 t b) (*.f64 a z)) b)) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (fma.f64 a z (/.f64 (*.f64 z y) b)) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t x) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 z y) b))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 b) (-.f64 (neg.f64 a) (/.f64 y b)))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 t b) (*.f64 a z))))) |
#s(approx (+ (* (* b z) a) (* z y)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 z y) b))))) |
Compiled 6 567 to 675 computations (89.7% saved)
12 alts after pruning (3 fresh and 9 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 207 | 0 | 207 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 5 | 5 |
| Done | 0 | 4 | 4 |
| Total | 207 | 12 | 219 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 52.0% | (+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
| ✓ | 46.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
| ✓ | 52.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
| ▶ | 52.0% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
| ✓ | 55.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| ✓ | 48.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
| ✓ | 51.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| ▶ | 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| ✓ | 25.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 29.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ✓ | 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 27.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 262 to 194 computations (26% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b z) a) |
(*.f64 b z) |
b |
z |
a |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
#s(approx (+ (* b z) t) t) |
t |
x |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (* b z) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z) b z a (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) t x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (* (* a z) b) (* a z)) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z) b z a (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) t x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (* (* a z) b) (* a z)) |
| 1.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z) b z a (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) t x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (* (* a z) b) (* a z)) |
| 1.0ms | b | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z) b z a (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) t x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (* (* a z) b) (* a z)) |
| 1.0ms | b | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z) b z a (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) t x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (* (* a z) b) (* a z)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 307 | 1901 |
| 0 | 315 | 1718 |
| 1 | 1956 | 1716 |
| 0 | 9360 | 1481 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b z) a) |
(*.f64 b z) |
b |
z |
a |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
#s(approx (+ (* b z) t) t) |
t |
x |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (* b z) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 b (*.f64 a z)) |
(*.f64 (*.f64 a z) b) |
(*.f64 a (*.f64 b z)) |
(*.f64 b z) |
(*.f64 z b) |
b |
z |
a |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 #s(approx (+ (* b z) t) t) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)))) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
(fma.f64 a #s(approx (+ (* b z) t) t) x) |
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))) |
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))))) |
(+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x) |
(+.f64 x (*.f64 #s(approx (+ (* b z) t) t) a)) |
#s(approx (+ (* b z) t) t) |
t |
x |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 b z) a #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 b (*.f64 a z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 a (*.f64 b z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(-.f64 (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))) |
(-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 (neg.f64 a) z) b)) |
(+.f64 (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 b (*.f64 a z)) |
(*.f64 (*.f64 a z) b) |
(*.f64 a (*.f64 b z)) |
(*.f64 a z) |
(*.f64 z a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx x x) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (*.f64 z y))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a (/.f64 (fma.f64 b z t) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* (+ (* b z) t) a) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 (fma.f64 b z t) a) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ x (* y z)) (* t a)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 z y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) y) z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) |
#s(approx (* (* a z) b) (*.f64 (*.f64 b z) a)) |
#s(approx (* b z) (*.f64 b z)) |
#s(approx z z) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 a t x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx (* (* a z) b) (*.f64 (*.f64 b z) a)) |
#s(approx (* a z) (*.f64 a z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (*.f64 b a) z x)) |
#s(approx t t) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 a t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 a t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) t) a) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) t) a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (fma.f64 b z (/.f64 x a)) t) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) a) t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (neg.f64 (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (fma.f64 b z (/.f64 x a)) t)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) a) t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t x) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t x) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
Compiled 3 825 to 408 computations (89.3% saved)
12 alts after pruning (2 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 127 | 2 | 129 |
| Fresh | 0 | 0 | 0 |
| Picked | 2 | 1 | 3 |
| Done | 0 | 9 | 9 |
| Total | 129 | 12 | 141 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 46.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
| ✓ | 52.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
| ✓ | 52.0% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
| ✓ | 55.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| 52.0% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) | |
| ✓ | 48.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
| ✓ | 51.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| 25.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 a z) b)) | |
| ✓ | 25.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 29.9% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ✓ | 26.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 27.8% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 665 to 263 computations (60.5% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
7 calls:
| 8.0ms | y |
| 6.0ms | x |
| 5.0ms | b |
| 5.0ms | t |
| 5.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 96.5% | 2 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 92.1% | 1 | x |
| 92.1% | 1 | y |
| 97.2% | 3 | z |
| 92.1% | 1 | t |
| 94.6% | 2 | a |
| 92.1% | 1 | b |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (*.f64 b z) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
7 calls:
| 6.0ms | a |
| 5.0ms | x |
| 5.0ms | b |
| 5.0ms | y |
| 5.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 85.9% | 3 | x |
| 87.5% | 4 | y |
| 83.3% | 4 | t |
| 80.1% | 3 | b |
| 84.4% | 4 | a |
| 87.9% | 3 | z |
| 80.9% | 3 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
5 calls:
| 7.0ms | z |
| 4.0ms | x |
| 4.0ms | a |
| 4.0ms | y |
| 4.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.3% | 3 | t |
| 73.7% | 3 | a |
| 72.3% | 5 | x |
| 73.9% | 5 | y |
| 81.5% | 3 | z |
Compiled 5 to 30 computations (-500% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
6 calls:
| 7.0ms | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 3.0ms | z |
| 3.0ms | b |
| 3.0ms | t |
| 3.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 67.6% | 3 | y |
| 68.6% | 3 | t |
| 64.3% | 3 | a |
| 62.9% | 3 | b |
| 60.6% | 3 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 69.6% | 3 | z |
Compiled 20 to 43 computations (-115% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
4 calls:
| 5.0ms | y |
| 2.0ms | z |
| 2.0ms | x |
| 2.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 62.6% | 3 | y |
| 52.0% | 1 | t |
| 52.0% | 1 | x |
| 65.7% | 3 | z |
Compiled 4 to 24 computations (-500% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
7 calls:
| 2.0ms | x |
| 2.0ms | b |
| 2.0ms | a |
| 2.0ms | y |
| 2.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 47.4% | 4 | t |
| 45.6% | 4 | x |
| 41.0% | 3 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 49.1% | 5 | y |
| 37.6% | 4 | b |
| 42.5% | 5 | a |
| 49.9% | 5 | z |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
3 calls:
| 1.0ms | y |
| 1.0ms | z |
| 1.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 45.8% | 3 | t |
| 36.1% | 5 | y |
| 34.0% | 4 | z |
Compiled 3 to 18 computations (-500% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
7 calls:
| 1.0ms | t |
| 1.0ms | z |
| 1.0ms | a |
| 1.0ms | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 1.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 27.8% | 1 | z |
| 27.8% | 1 | y |
| 27.8% | 1 | b |
| 27.8% | 1 | a |
| 27.8% | 1 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 27.8% | 1 | x |
| 27.8% | 1 | t |
Compiled 21 to 49 computations (-133.3% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
Compiled 18 to 22 computations (-22.2% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 6.682953885644155e+32 | 6.1897306510764425e+37 |
| 14.0ms | -1.5240897527768807e+85 | -6.5274722394795955e+81 |
| 19.0ms | 272× | 0 | valid |
Compiled 783 to 600 computations (23.4% saved)
ival-mult: 7.0ms (65.2% of total)ival-add: 3.0ms (28% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 12.0ms | 6.682953885644155e+32 | 6.1897306510764425e+37 |
| 11.0ms | -1.5240897527768807e+85 | -6.5274722394795955e+81 |
| 15.0ms | 208× | 0 | valid |
Compiled 732 to 583 computations (20.4% saved)
ival-mult: 5.0ms (61.3% of total)ival-add: 3.0ms (36.8% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 28.0ms | 6.1897306510764425e+37 | 6.271906617151093e+40 |
| 17.0ms | -9.260645841032587e-73 | -1.876033794885755e-84 |
| 20.0ms | 288× | 0 | valid |
Compiled 738 to 598 computations (19% saved)
ival-mult: 7.0ms (61.8% of total)ival-add: 4.0ms (35.3% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 12.0ms | 1.0549447403780874e+57 | 5.937837714260395e+58 |
| 12.0ms | -1.5240897527768807e+85 | -6.5274722394795955e+81 |
| 16.0ms | 224× | 0 | valid |
Compiled 603 to 502 computations (16.7% saved)
ival-mult: 6.0ms (69.8% of total)ival-add: 3.0ms (34.9% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 4× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 4.425358549483879e+25 | 6.682953885644155e+32 |
| 39.0ms | 4.3044903910514615e-133 | 2.125255985352101e-124 |
| 12.0ms | -1.0037908802886506e-237 | -3.693142885284374e-239 |
| 10.0ms | -5.716109679106642e+72 | -4.715698677408051e+71 |
| 59.0ms | 496× | 0 | valid |
Compiled 1 134 to 983 computations (13.3% saved)
ival-mult: 36.0ms (83.3% of total)ival-add: 6.0ms (13.9% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 2.964729398185094e+33 | 3.8459719319427796e+36 |
| 29.0ms | -5.089812476647378e+72 | -2.4285416692873973e+72 |
| 35.0ms | 208× | 0 | valid |
Compiled 486 to 425 computations (12.6% saved)
ival-mult: 5.0ms (59.6% of total)ival-add: 3.0ms (35.8% of total)ival-true: 0.0ms (0% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 80 | 426 |
| 1 | 117 | 392 |
| 2 | 201 | 392 |
| 3 | 436 | 392 |
| 4 | 826 | 392 |
| 5 | 1114 | 392 |
| 6 | 1186 | 392 |
| 7 | 1242 | 392 |
| 8 | 1281 | 392 |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(literal +inf.0 binary64)) (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z))) |
(if (<=.f64 z #s(literal -51999999999999996749156087923078196163990390420441018845280670858792225752842502144 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 57999999999999995671995148567926800384 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (<=.f64 z #s(literal -6600000000000000028084323987891536925948065398876861480200484362067601902054408192 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 2499999999999999884690664550530285568 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (<=.f64 z #s(literal -4823701191960063/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) (if (<=.f64 z #s(literal 880000000000000025524244681961693511680 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)))) |
(if (<=.f64 z #s(literal -5100000000000000143634009144347490332294777860879995326832004736269827009306098139136 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal 7200000000000000487475840722802739848802682094463962054656 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))) |
(if (<=.f64 z #s(literal -879999999999999978007913727255950842951935960071625038206634094539833344 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal -5747942572053599/117304950450073441093299338992332138457996243649210992760592177980666118165925495436678284352817677825758656549761022853424729541660972550965022826666248518125620733165482852770884817967017897067499683873717228533661411547573197142488509591988118713532416 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 z #s(literal 6792924845487599/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 z #s(literal 23999999999999998119878066176 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))))) |
(if (<=.f64 t #s(literal -3700000000000000204001501895290837915735410175379145523430334443561156608 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 t #s(literal 1249999999999999942345332275265142784 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| Outputs |
|---|
(if (<=.f64 (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(literal +inf.0 binary64)) (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z))) |
(if (<=.f64 z #s(literal -51999999999999996749156087923078196163990390420441018845280670858792225752842502144 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 57999999999999995671995148567926800384 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (or (<=.f64 z #s(literal -51999999999999996749156087923078196163990390420441018845280670858792225752842502144 binary64)) (not (<=.f64 z #s(literal 57999999999999995671995148567926800384 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x))) |
(if (<=.f64 z #s(literal -6600000000000000028084323987891536925948065398876861480200484362067601902054408192 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 2499999999999999884690664550530285568 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (or (<=.f64 z #s(literal -6600000000000000028084323987891536925948065398876861480200484362067601902054408192 binary64)) (not (<=.f64 z #s(literal 2499999999999999884690664550530285568 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 z #s(literal -4823701191960063/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) (if (<=.f64 z #s(literal 880000000000000025524244681961693511680 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)))) |
(if (or (<=.f64 z #s(literal -4823701191960063/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064 binary64)) (not (<=.f64 z #s(literal 880000000000000025524244681961693511680 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 z #s(literal -5100000000000000143634009144347490332294777860879995326832004736269827009306098139136 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal 7200000000000000487475840722802739848802682094463962054656 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))) |
(if (or (<=.f64 z #s(literal -5100000000000000143634009144347490332294777860879995326832004736269827009306098139136 binary64)) (not (<=.f64 z #s(literal 7200000000000000487475840722802739848802682094463962054656 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 z #s(literal -879999999999999978007913727255950842951935960071625038206634094539833344 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal -5747942572053599/117304950450073441093299338992332138457996243649210992760592177980666118165925495436678284352817677825758656549761022853424729541660972550965022826666248518125620733165482852770884817967017897067499683873717228533661411547573197142488509591988118713532416 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 z #s(literal 6792924845487599/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 z #s(literal 23999999999999998119878066176 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))))) |
(if (<=.f64 t #s(literal -3700000000000000204001501895290837915735410175379145523430334443561156608 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 t #s(literal 1249999999999999942345332275265142784 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)))) |
(if (or (<=.f64 t #s(literal -3700000000000000204001501895290837915735410175379145523430334443561156608 binary64)) (not (<=.f64 t #s(literal 1249999999999999942345332275265142784 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| 1× | fuel |
Compiled 426 to 85 computations (80% saved)
Compiled 976 to 244 computations (75% saved)
Loading profile data...