Average Error: 36.0 → 36.0
Time: 2.5s
Precision: binary64
\[\frac{\left(-\left(\left(az - dz\right) - \frac{vz}{vx} \cdot \left(ax - dx\right)\right)\right) - \left(\left(bz - az\right) - \frac{vz}{vx} \cdot \left(bx - ax\right)\right) \cdot gz}{\left(\left(\left(dz - cz\right) - \left(bz - az\right)\right) - \frac{vz}{vx} \cdot \left(\left(dx - cx\right) - \left(bx - ax\right)\right)\right) \cdot gz + \left(\left(cz - az\right) - \frac{vz}{vx} \cdot \left(cx - ax\right)\right)}\]
\[\frac{\left(-\left(\left(az - dz\right) - \frac{vz}{vx} \cdot \left(ax - dx\right)\right)\right) - \left(\left(bz - az\right) - \frac{vz}{vx} \cdot \left(bx - ax\right)\right) \cdot gz}{\left(\left(\left(dz - cz\right) - \left(bz - az\right)\right) - \frac{vz}{vx} \cdot \left(\left(dx - cx\right) - \left(bx - ax\right)\right)\right) \cdot gz + \left(\left(cz - az\right) - \frac{vz}{vx} \cdot \left(cx - ax\right)\right)}\]

Error

Bits error versus az

Bits error versus dz

Bits error versus vz

Bits error versus vx

Bits error versus ax

Bits error versus dx

Bits error versus bz

Bits error versus bx

Bits error versus gz

Bits error versus cz

Bits error versus cx

Derivation

  1. Initial program 36.0

    \[\frac{\left(-\left(\left(az - dz\right) - \frac{vz}{vx} \cdot \left(ax - dx\right)\right)\right) - \left(\left(bz - az\right) - \frac{vz}{vx} \cdot \left(bx - ax\right)\right) \cdot gz}{\left(\left(\left(dz - cz\right) - \left(bz - az\right)\right) - \frac{vz}{vx} \cdot \left(\left(dx - cx\right) - \left(bx - ax\right)\right)\right) \cdot gz + \left(\left(cz - az\right) - \frac{vz}{vx} \cdot \left(cx - ax\right)\right)}\]
  2. Final simplification36.0

    \[\leadsto \frac{\left(-\left(\left(az - dz\right) - \frac{vz}{vx} \cdot \left(ax - dx\right)\right)\right) - \left(\left(bz - az\right) - \frac{vz}{vx} \cdot \left(bx - ax\right)\right) \cdot gz}{\left(\left(\left(dz - cz\right) - \left(bz - az\right)\right) - \frac{vz}{vx} \cdot \left(\left(dx - cx\right) - \left(bx - ax\right)\right)\right) \cdot gz + \left(\left(cz - az\right) - \frac{vz}{vx} \cdot \left(cx - ax\right)\right)}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (az dz vz vx ax dx bz bx gz cz cx)
  :name "(/ (- (- (- (- az dz) (* (/ vz vx) (- ax dx)))) (* (- (- bz az) (* (/ vz vx) (- bx ax))) gz)) (+ (* (- (- (- dz cz) (- bz az)) (* (/ vz vx) (- (- dx cx) (- bx ax)))) gz) (- (- cz az) (* (/ vz vx) (- cx ax)))))"
  :precision binary64
  (/ (- (neg (- (- az dz) (* (/ vz vx) (- ax dx)))) (* (- (- bz az) (* (/ vz vx) (- bx ax))) gz)) (+ (* (- (- (- dz cz) (- bz az)) (* (/ vz vx) (- (- dx cx) (- bx ax)))) gz) (- (- cz az) (* (/ vz vx) (- cx ax))))))