Average Error: 0.0 → 0.0
Time: 1.7min
Precision: binary64
Cost: 448
\[x + \frac{y - x}{z}\]
\[x + \frac{y - x}{z}\]
x + \frac{y - x}{z}
x + \frac{y - x}{z}
(FPCore (x y z) :precision binary64 (+ x (/ (- y x) z)))
(FPCore (x y z) :precision binary64 (+ x (/ (- y x) z)))
double code(double x, double y, double z) {
	return x + ((y - x) / z);
}
double code(double x, double y, double z) {
	return x + ((y - x) / z);
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Alternatives

Alternative 1
Error0.9
Cost648
\[\begin{array}{l} \mathbf{if}\;z \leq -20.954176284113203 \lor \neg \left(z \leq 0.0008239077031671187\right):\\ \;\;\;\;x + \frac{y}{z}\\ \mathbf{else}:\\ \;\;\;\;\frac{y - x}{z}\\ \end{array}\]
Alternative 2
Error12.7
Cost962
\[\begin{array}{l} \mathbf{if}\;z \leq -6.18472905606535 \cdot 10^{+91}:\\ \;\;\;\;x\\ \mathbf{elif}\;z \leq 1.1859692905493093 \cdot 10^{+31}:\\ \;\;\;\;\frac{y - x}{z}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array}\]
Alternative 3
Error24.4
Cost1861
\[\begin{array}{l} \mathbf{if}\;z \leq -6.604120182291285 \cdot 10^{+91}:\\ \;\;\;\;x\\ \mathbf{elif}\;z \leq -2.6377701579202143 \cdot 10^{-31}:\\ \;\;\;\;\frac{y}{z}\\ \mathbf{elif}\;z \leq 3.5448107319994485 \cdot 10^{-252}:\\ \;\;\;\;\frac{-x}{z}\\ \mathbf{elif}\;z \leq 7.170117062469673 \cdot 10^{-121}:\\ \;\;\;\;\frac{y}{z}\\ \mathbf{elif}\;z \leq 0.9987192219560581:\\ \;\;\;\;\frac{-x}{z}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array}\]
Alternative 4
Error24.3
Cost834
\[\begin{array}{l} \mathbf{if}\;z \leq -2.2766525948970015 \cdot 10^{+92}:\\ \;\;\;\;x\\ \mathbf{elif}\;z \leq 1.429772539471502 \cdot 10^{+31}:\\ \;\;\;\;\frac{y}{z}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array}\]
Alternative 5
Error35.1
Cost64
\[x\]

Error

Time

Derivation

  1. Initial program 0.0

    \[x + \frac{y - x}{z}\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt_binary64_78232.3

    \[\leadsto x + \frac{y - x}{\color{blue}{\sqrt{z} \cdot \sqrt{z}}}\]
  4. Applied *-un-lft-identity_binary64_76032.3

    \[\leadsto x + \frac{\color{blue}{1 \cdot \left(y - x\right)}}{\sqrt{z} \cdot \sqrt{z}}\]
  5. Applied times-frac_binary64_76632.4

    \[\leadsto x + \color{blue}{\frac{1}{\sqrt{z}} \cdot \frac{y - x}{\sqrt{z}}}\]
  6. Using strategy rm
  7. Applied *-un-lft-identity_binary64_76032.4

    \[\leadsto x + \frac{1}{\color{blue}{1 \cdot \sqrt{z}}} \cdot \frac{y - x}{\sqrt{z}}\]
  8. Applied *-un-lft-identity_binary64_76032.4

    \[\leadsto x + \frac{\color{blue}{1 \cdot 1}}{1 \cdot \sqrt{z}} \cdot \frac{y - x}{\sqrt{z}}\]
  9. Applied times-frac_binary64_76632.4

    \[\leadsto x + \color{blue}{\left(\frac{1}{1} \cdot \frac{1}{\sqrt{z}}\right)} \cdot \frac{y - x}{\sqrt{z}}\]
  10. Applied associate-*l*_binary64_70132.4

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

    \[\leadsto x + \frac{1}{1} \cdot \color{blue}{\frac{y - x}{z}}\]
  12. Using strategy rm
  13. Applied *-un-lft-identity_binary64_7600.0

    \[\leadsto x + \frac{1}{1} \cdot \frac{y - x}{\color{blue}{1 \cdot z}}\]
  14. Applied *-un-lft-identity_binary64_7600.0

    \[\leadsto x + \frac{1}{1} \cdot \frac{\color{blue}{1 \cdot \left(y - x\right)}}{1 \cdot z}\]
  15. Applied times-frac_binary64_7660.0

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

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

    \[\leadsto \color{blue}{x + \frac{y - x}{z}}\]
  18. Final simplification0.0

    \[\leadsto x + \frac{y - x}{z}\]

Reproduce

herbie shell --seed 2021040 
(FPCore (x y z)
  :name "Statistics.Sample:$swelfordMean from math-functions-0.1.5.2"
  :precision binary64
  (+ x (/ (- y x) z)))