(FPCore (pi) :precision binary64 (+ (pow pi 100.0) 0.01))
(FPCore (pi) :precision binary64 (+ (pow pi 100.0) 0.01))
double code(double pi) { return pow(pi, 100.0) + 0.01; }
double code(double pi) { return pow(pi, 100.0) + 0.01; }
real(8) function code(pi) real(8), intent (in) :: pi code = (pi ** 100.0d0) + 0.01d0 end function
real(8) function code(pi) real(8), intent (in) :: pi code = (pi ** 100.0d0) + 0.01d0 end function
public static double code(double pi) { return Math.pow(pi, 100.0) + 0.01; }
public static double code(double pi) { return Math.pow(pi, 100.0) + 0.01; }
def code(pi): return math.pow(pi, 100.0) + 0.01
def code(pi): return math.pow(pi, 100.0) + 0.01
function code(pi) return Float64((pi ^ 100.0) + 0.01) end
function code(pi) return Float64((pi ^ 100.0) + 0.01) end
function tmp = code(pi) tmp = (pi ^ 100.0) + 0.01; end
function tmp = code(pi) tmp = (pi ^ 100.0) + 0.01; end
code[pi_] := N[(N[Power[pi, 100.0], $MachinePrecision] + 0.01), $MachinePrecision]
code[pi_] := N[(N[Power[pi, 100.0], $MachinePrecision] + 0.01), $MachinePrecision]
{pi}^{100} + 0.01
{pi}^{100} + 0.01
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 1
(FPCore (pi)
:name "pow(pi, 100) + 0.01"
:precision binary64
:pre (and (<= 3.14 pi) (<= pi 3.1416))
(+ (pow pi 100.0) 0.01))