(FPCore (x y) :precision binary64 (* (cos x) (/ (sinh y) y)))
(FPCore (x y) :precision binary64 (* (/ (sinh y) y) (cos x)))
double code(double x, double y) {
return cos(x) * (sinh(y) / y);
}
double code(double x, double y) {
return (sinh(y) / y) * cos(x);
}
real(8) function code(x, y)
real(8), intent (in) :: x
real(8), intent (in) :: y
code = cos(x) * (sinh(y) / y)
end function
real(8) function code(x, y)
real(8), intent (in) :: x
real(8), intent (in) :: y
code = (sinh(y) / y) * cos(x)
end function
public static double code(double x, double y) {
return Math.cos(x) * (Math.sinh(y) / y);
}
public static double code(double x, double y) {
return (Math.sinh(y) / y) * Math.cos(x);
}
def code(x, y): return math.cos(x) * (math.sinh(y) / y)
def code(x, y): return (math.sinh(y) / y) * math.cos(x)
function code(x, y) return Float64(cos(x) * Float64(sinh(y) / y)) end
function code(x, y) return Float64(Float64(sinh(y) / y) * cos(x)) end
function tmp = code(x, y) tmp = cos(x) * (sinh(y) / y); end
function tmp = code(x, y) tmp = (sinh(y) / y) * cos(x); end
code[x_, y_] := N[(N[Cos[x], $MachinePrecision] * N[(N[Sinh[y], $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]
code[x_, y_] := N[(N[(N[Sinh[y], $MachinePrecision] / y), $MachinePrecision] * N[Cos[x], $MachinePrecision]), $MachinePrecision]
\cos x \cdot \frac{\sinh y}{y}
\frac{\sinh y}{y} \cdot \cos x



Bits error versus x



Bits error versus y
Results
Initial program 0.0
Applied *-commutative_binary640.0
Final simplification0.0
herbie shell --seed 2022131
(FPCore (x y)
:name "Linear.Quaternion:$csin from linear-1.19.1.3"
:precision binary64
(* (cos x) (/ (sinh y) y)))