Average Error: 0.1 → 0.1
Time: 15.9s
Precision: 64
$\left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)$
$\left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)$
\left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)
\left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)
double f(double k, double jl, double j, double l) {
double r2352869 = k;
double r2352870 = 2.0;
double r2352871 = pow(r2352869, r2352870);
double r2352872 = jl;
double r2352873 = r2352871 + r2352872;
double r2352874 = j;
double r2352875 = r2352870 * r2352869;
double r2352876 = r2352874 - r2352875;
double r2352877 = l;
double r2352878 = r2352876 + r2352877;
double r2352879 = r2352873 * r2352878;
return r2352879;
}


double f(double k, double jl, double j, double l) {
double r2352880 = k;
double r2352881 = 2.0;
double r2352882 = pow(r2352880, r2352881);
double r2352883 = jl;
double r2352884 = r2352882 + r2352883;
double r2352885 = j;
double r2352886 = r2352881 * r2352880;
double r2352887 = r2352885 - r2352886;
double r2352888 = l;
double r2352889 = r2352887 + r2352888;
double r2352890 = r2352884 * r2352889;
return r2352890;
}



# Try it out

Results

 In Out
Enter valid numbers for all inputs

# Derivation

1. Initial program 0.1

$\left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)$
2. Final simplification0.1

$\leadsto \left({k}^{2} + jl\right) \cdot \left(\left(j - 2 \cdot k\right) + \ell\right)$

# Reproduce

herbie shell --seed 1
(FPCore (k jl j l)
:name "(k^2+jl)(j-2k+l)"
:precision binary64
(* (+ (pow k 2) jl) (+ (- j (* 2 k)) l)))