Average Error: 8.1 → 8.1
Time: 2.2s
Precision: binary64
\[\left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)\]
\[\left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)\]
\left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)
\left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)
double code(double Ox, double Px, double Ay, double Py, double Oy, double Ax) {
	return ((double) (((double) (((double) (Ox - Px)) * ((double) (Ay - Py)))) - ((double) (((double) (Oy - Py)) * ((double) (Ax - Px))))));
}
double code(double Ox, double Px, double Ay, double Py, double Oy, double Ax) {
	return ((double) (((double) (((double) (Ox - Px)) * ((double) (Ay - Py)))) - ((double) (((double) (Oy - Py)) * ((double) (Ax - Px))))));
}

Error

Bits error versus Ox

Bits error versus Px

Bits error versus Ay

Bits error versus Py

Bits error versus Oy

Bits error versus Ax

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 8.1

    \[\left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)\]
  2. Final simplification8.1

    \[\leadsto \left(Ox - Px\right) \cdot \left(Ay - Py\right) - \left(Oy - Py\right) \cdot \left(Ax - Px\right)\]

Reproduce

herbie shell --seed 2020152 
(FPCore (Ox Px Ay Py Oy Ax)
  :name "(- (* (- Ox Px) (- Ay Py)) (* (- Oy Py) (- Ax Px)))"
  :precision binary64
  (- (* (- Ox Px) (- Ay Py)) (* (- Oy Py) (- Ax Px))))