(FPCore (x y z t a b)
:precision binary64
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))
↓
(FPCore (x y z t a b)
:precision binary64
(if (or (<= y -1e-259) (not (<= y 9e-132)))
(/ (* x (exp (- (+ (* y (log z)) (* (+ t -1.0) (log a))) b))) y)
(/ x (* (pow a (- 1.0 t)) (* y (exp b))))))
real(8) function code(x, y, z, t, a, b)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
code = (x * exp((((y * log(z)) + ((t - 1.0d0) * log(a))) - b))) / y
end function
↓
real(8) function code(x, y, z, t, a, b)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8) :: tmp
if ((y <= (-1d-259)) .or. (.not. (y <= 9d-132))) then
tmp = (x * exp((((y * log(z)) + ((t + (-1.0d0)) * log(a))) - b))) / y
else
tmp = x / ((a ** (1.0d0 - t)) * (y * exp(b)))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
return (x * Math.exp((((y * Math.log(z)) + ((t - 1.0) * Math.log(a))) - b))) / y;
}
def code(x, y, z, t, a, b):
return (x * math.exp((((y * math.log(z)) + ((t - 1.0) * math.log(a))) - b))) / y
↓
def code(x, y, z, t, a, b):
tmp = 0
if (y <= -1e-259) or not (y <= 9e-132):
tmp = (x * math.exp((((y * math.log(z)) + ((t + -1.0) * math.log(a))) - b))) / y
else:
tmp = x / (math.pow(a, (1.0 - t)) * (y * math.exp(b)))
return tmp
function code(x, y, z, t, a, b)
return Float64(Float64(x * exp(Float64(Float64(Float64(y * log(z)) + Float64(Float64(t - 1.0) * log(a))) - b))) / y)
end
↓
function code(x, y, z, t, a, b)
tmp = 0.0
if ((y <= -1e-259) || !(y <= 9e-132))
tmp = Float64(Float64(x * exp(Float64(Float64(Float64(y * log(z)) + Float64(Float64(t + -1.0) * log(a))) - b))) / y);
else
tmp = Float64(x / Float64((a ^ Float64(1.0 - t)) * Float64(y * exp(b))));
end
return tmp
end
function tmp = code(x, y, z, t, a, b)
tmp = (x * exp((((y * log(z)) + ((t - 1.0) * log(a))) - b))) / y;
end
↓
function tmp_2 = code(x, y, z, t, a, b)
tmp = 0.0;
if ((y <= -1e-259) || ~((y <= 9e-132)))
tmp = (x * exp((((y * log(z)) + ((t + -1.0) * log(a))) - b))) / y;
else
tmp = x / ((a ^ (1.0 - t)) * (y * exp(b)));
end
tmp_2 = tmp;
end
herbie shell --seed 2023088
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2, A"
:precision binary64
:herbie-target
(if (< t -0.8845848504127471) (/ (* x (/ (pow a (- t 1.0)) y)) (- (+ b 1.0) (* y (log z)))) (if (< t 852031.2288374073) (/ (* (/ x y) (pow a (- t 1.0))) (exp (- b (* (log z) y)))) (/ (* x (/ (pow a (- t 1.0)) y)) (- (+ b 1.0) (* y (log z))))))
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))