Average Error: 20.0 → 0.1
Time: 7.1s
Precision: binary64
Cost: 1088
\[\frac{x \cdot y}{\left(\left(x + y\right) \cdot \left(x + y\right)\right) \cdot \left(\left(x + y\right) + 1\right)}\]
\[\frac{x}{x + y} \cdot \frac{\frac{y}{\left(x + y\right) + 1}}{x + y}\]
\frac{x \cdot y}{\left(\left(x + y\right) \cdot \left(x + y\right)\right) \cdot \left(\left(x + y\right) + 1\right)}
\frac{x}{x + y} \cdot \frac{\frac{y}{\left(x + y\right) + 1}}{x + y}
(FPCore (x y)
 :precision binary64
 (/ (* x y) (* (* (+ x y) (+ x y)) (+ (+ x y) 1.0))))
(FPCore (x y)
 :precision binary64
 (* (/ x (+ x y)) (/ (/ y (+ (+ x y) 1.0)) (+ x y))))
double code(double x, double y) {
	return (x * y) / (((x + y) * (x + y)) * ((x + y) + 1.0));
}
double code(double x, double y) {
	return (x / (x + y)) * ((y / ((x + y) + 1.0)) / (x + y));
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original20.0
Target0.1
Herbie0.1
\[\frac{\frac{\frac{x}{\left(y + 1\right) + x}}{y + x}}{\frac{1}{\frac{y}{y + x}}}\]

Alternatives

Alternative 1
Error8.7
Cost1288
\[\begin{array}{l} \mathbf{if}\;y \leq -0.479391894918256 \lor \neg \left(y \leq 1.1562942154847326 \cdot 10^{+114}\right):\\ \;\;\;\;\frac{\frac{x}{y}}{\left(x + y\right) + 1}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{x + y}}{x + y} \cdot \frac{y}{x + 1}\\ \end{array}\]
Alternative 2
Error16.8
Cost1169
\[\begin{array}{l} \mathbf{if}\;y \leq -0.08689245429463074 \lor \neg \left(y \leq 7.87691972705755 \cdot 10^{-69} \lor \neg \left(y \leq 166590009221051.28\right) \land y \leq 9.291964939195028 \cdot 10^{+81}\right):\\ \;\;\;\;\frac{\frac{x}{y}}{\left(x + y\right) + 1}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{y}{x}}{\left(x + y\right) + 1}\\ \end{array}\]
Alternative 3
Error17.0
Cost1169
\[\begin{array}{l} \mathbf{if}\;y \leq -0.26249774882849686 \lor \neg \left(y \leq 4.198501929514065 \cdot 10^{-69} \lor \neg \left(y \leq 4947344398780478\right) \land y \leq 2.4971633622726765 \cdot 10^{+85}\right):\\ \;\;\;\;\frac{\frac{x}{y}}{\left(x + y\right) + 1}\\ \mathbf{else}:\\ \;\;\;\;\frac{y}{x + x \cdot x}\\ \end{array}\]
Alternative 4
Error17.6
Cost1732
\[\begin{array}{l} \mathbf{if}\;y \leq -0.2907882896228133:\\ \;\;\;\;\frac{x}{y \cdot \left(y + 1\right)}\\ \mathbf{elif}\;y \leq 2.896377103883239 \cdot 10^{-13}:\\ \;\;\;\;\frac{y}{x + x \cdot x}\\ \mathbf{elif}\;y \leq 16672508742.18026:\\ \;\;\;\;\frac{x}{y \cdot \left(y + 1\right)}\\ \mathbf{elif}\;y \leq 9.291964939195028 \cdot 10^{+81}:\\ \;\;\;\;\frac{y}{x + x \cdot x}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{y \cdot y}\\ \end{array}\]
Alternative 5
Error17.5
Cost776
\[\begin{array}{l} \mathbf{if}\;x \leq -3.673899662106542 \cdot 10^{+19} \lor \neg \left(x \leq 2.483067165956707 \cdot 10^{+55}\right):\\ \;\;\;\;\frac{y}{x \cdot x}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{y \cdot \left(y + 1\right)}\\ \end{array}\]
Alternative 6
Error25.6
Cost648
\[\begin{array}{l} \mathbf{if}\;y \leq -1826362507707992 \lor \neg \left(y \leq 1.1991192111178663 \cdot 10^{+82}\right):\\ \;\;\;\;\frac{x}{y \cdot y}\\ \mathbf{else}:\\ \;\;\;\;\frac{y}{x \cdot x}\\ \end{array}\]
Alternative 7
Error27.8
Cost962
\[\begin{array}{l} \mathbf{if}\;y \leq -6.215245166524276 \cdot 10^{+112}:\\ \;\;\;\;0\\ \mathbf{elif}\;y \leq 9.552952017961924 \cdot 10^{+91}:\\ \;\;\;\;\frac{y}{x \cdot x}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
Alternative 8
Error30.6
Cost64
\[0\]
Alternative 9
Error61.8
Cost64
\[1\]

Error

Derivation

  1. Initial program 20.0

    \[\frac{x \cdot y}{\left(\left(x + y\right) \cdot \left(x + y\right)\right) \cdot \left(\left(x + y\right) + 1\right)}\]
  2. Using strategy rm
  3. Applied associate-/r*_binary64_1263917.1

    \[\leadsto \color{blue}{\frac{\frac{x \cdot y}{\left(x + y\right) \cdot \left(x + y\right)}}{\left(x + y\right) + 1}}\]
  4. Simplified7.8

    \[\leadsto \frac{\color{blue}{\frac{x}{\left(x + y\right) \cdot \left(x + y\right)} \cdot y}}{\left(x + y\right) + 1}\]
  5. Using strategy rm
  6. Applied *-un-lft-identity_binary64_126957.8

    \[\leadsto \frac{\frac{\color{blue}{1 \cdot x}}{\left(x + y\right) \cdot \left(x + y\right)} \cdot y}{\left(x + y\right) + 1}\]
  7. Applied times-frac_binary64_127010.2

    \[\leadsto \frac{\color{blue}{\left(\frac{1}{x + y} \cdot \frac{x}{x + y}\right)} \cdot y}{\left(x + y\right) + 1}\]
  8. Using strategy rm
  9. Applied *-un-lft-identity_binary64_126950.2

    \[\leadsto \frac{\left(\frac{1}{x + y} \cdot \frac{x}{x + y}\right) \cdot y}{\color{blue}{1 \cdot \left(\left(x + y\right) + 1\right)}}\]
  10. Applied times-frac_binary64_127010.2

    \[\leadsto \color{blue}{\frac{\frac{1}{x + y} \cdot \frac{x}{x + y}}{1} \cdot \frac{y}{\left(x + y\right) + 1}}\]
  11. Simplified0.2

    \[\leadsto \color{blue}{\frac{\frac{x}{x + y}}{x + y}} \cdot \frac{y}{\left(x + y\right) + 1}\]
  12. Simplified0.2

    \[\leadsto \frac{\frac{x}{x + y}}{x + y} \cdot \color{blue}{\frac{y}{1 + \left(x + y\right)}}\]
  13. Using strategy rm
  14. Applied div-inv_binary64_126920.2

    \[\leadsto \color{blue}{\left(\frac{x}{x + y} \cdot \frac{1}{x + y}\right)} \cdot \frac{y}{1 + \left(x + y\right)}\]
  15. Applied associate-*l*_binary64_126360.2

    \[\leadsto \color{blue}{\frac{x}{x + y} \cdot \left(\frac{1}{x + y} \cdot \frac{y}{1 + \left(x + y\right)}\right)}\]
  16. Simplified0.1

    \[\leadsto \frac{x}{x + y} \cdot \color{blue}{\frac{\frac{y}{\left(x + y\right) + 1}}{x + y}}\]
  17. Simplified0.1

    \[\leadsto \color{blue}{\frac{x}{x + y} \cdot \frac{\frac{y}{\left(x + y\right) + 1}}{x + y}}\]
  18. Final simplification0.1

    \[\leadsto \frac{x}{x + y} \cdot \frac{\frac{y}{\left(x + y\right) + 1}}{x + y}\]

Reproduce

herbie shell --seed 2021044 
(FPCore (x y)
  :name "Numeric.SpecFunctions:incompleteBetaApprox from math-functions-0.1.5.2, A"
  :precision binary64

  :herbie-target
  (/ (/ (/ x (+ (+ y 1.0) x)) (+ y x)) (/ 1.0 (/ y (+ y x))))

  (/ (* x y) (* (* (+ x y) (+ x y)) (+ (+ x y) 1.0))))