Average Error: 0.0 → 0.0
Time: 7.0s
Precision: binary64
Cost: 13120
\[\sin x \cdot \frac{\sinh y}{y} \]
\[\frac{\sin x}{\frac{y}{\sinh y}} \]
(FPCore (x y) :precision binary64 (* (sin x) (/ (sinh y) y)))
(FPCore (x y) :precision binary64 (/ (sin x) (/ y (sinh y))))
double code(double x, double y) {
	return sin(x) * (sinh(y) / y);
}
double code(double x, double y) {
	return sin(x) / (y / sinh(y));
}
real(8) function code(x, y)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    code = sin(x) * (sinh(y) / y)
end function
real(8) function code(x, y)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    code = sin(x) / (y / sinh(y))
end function
public static double code(double x, double y) {
	return Math.sin(x) * (Math.sinh(y) / y);
}
public static double code(double x, double y) {
	return Math.sin(x) / (y / Math.sinh(y));
}
def code(x, y):
	return math.sin(x) * (math.sinh(y) / y)
def code(x, y):
	return math.sin(x) / (y / math.sinh(y))
function code(x, y)
	return Float64(sin(x) * Float64(sinh(y) / y))
end
function code(x, y)
	return Float64(sin(x) / Float64(y / sinh(y)))
end
function tmp = code(x, y)
	tmp = sin(x) * (sinh(y) / y);
end
function tmp = code(x, y)
	tmp = sin(x) / (y / sinh(y));
end
code[x_, y_] := N[(N[Sin[x], $MachinePrecision] * N[(N[Sinh[y], $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]
code[x_, y_] := N[(N[Sin[x], $MachinePrecision] / N[(y / N[Sinh[y], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\sin x \cdot \frac{\sinh y}{y}
\frac{\sin x}{\frac{y}{\sinh y}}

Error

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\sin x \cdot \frac{\sinh y}{y} \]
  2. Simplified0.0

    \[\leadsto \color{blue}{\frac{\sin x}{\frac{y}{\sinh y}}} \]
    Proof
    (/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y))): 0 points increase in error, 0 points decrease in error
    (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)): 95 points increase in error, 1 points decrease in error
    (Rewrite<= associate-*r/_binary64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))): 3 points increase in error, 94 points decrease in error
  3. Final simplification0.0

    \[\leadsto \frac{\sin x}{\frac{y}{\sinh y}} \]

Alternatives

Alternative 1
Error0.0
Cost13120
\[\sin x \cdot \frac{\sinh y}{y} \]
Alternative 2
Error0.7
Cost6976
\[\sin x \cdot \left(1 + 0.16666666666666666 \cdot \left(y \cdot y\right)\right) \]
Alternative 3
Error1.1
Cost6464
\[\sin x \]
Alternative 4
Error31.8
Cost576
\[x \cdot \left(1 + 0.16666666666666666 \cdot \left(y \cdot y\right)\right) \]
Alternative 5
Error32.0
Cost64
\[x \]

Error

Reproduce

herbie shell --seed 2022338 
(FPCore (x y)
  :name "Linear.Quaternion:$ccos from linear-1.19.1.3"
  :precision binary64
  (* (sin x) (/ (sinh y) y)))