Alternative 1 | |
---|---|
Error | 2.6 |
Cost | 6528 |
\[\pi \cdot x
\]
(FPCore (x) :precision binary64 (sin (* PI x)))
(FPCore (x) :precision binary64 (sin (* PI x)))
double code(double x) { return sin((((double) M_PI) * x)); }
double code(double x) { return sin((((double) M_PI) * x)); }
public static double code(double x) { return Math.sin((Math.PI * x)); }
public static double code(double x) { return Math.sin((Math.PI * x)); }
def code(x): return math.sin((math.pi * x))
def code(x): return math.sin((math.pi * x))
function code(x) return sin(Float64(pi * x)) end
function code(x) return sin(Float64(pi * x)) end
function tmp = code(x) tmp = sin((pi * x)); end
function tmp = code(x) tmp = sin((pi * x)); end
code[x_] := N[Sin[N[(Pi * x), $MachinePrecision]], $MachinePrecision]
code[x_] := N[Sin[N[(Pi * x), $MachinePrecision]], $MachinePrecision]
\sin \left(\pi \cdot x\right)
\sin \left(\pi \cdot x\right)
Results
Initial program 0.6
Final simplification0.6
Alternative 1 | |
---|---|
Error | 2.6 |
Cost | 6528 |
herbie shell --seed 1
(FPCore (x)
:name "sin(PI*x)"
:precision binary64
:pre (and (<= -1000000000.0 x) (<= x 1000000000.0))
(sin (* PI x)))