Average Error: 42.9 → 42.9
Time: 5.8s
Precision: binary64
\[\left(-p\right) \cdot \log p - \left(1 - p\right) \cdot \log \left(1 - p\right)\]
\[\left(-p\right) \cdot \log p - \left(1 - p\right) \cdot \log \left(1 - p\right)\]

Error

Bits error versus p

Derivation

  1. Initial program 42.9

    \[\left(-p\right) \cdot \log p - \left(1 - p\right) \cdot \log \left(1 - p\right)\]
  2. Final simplification42.9

    \[\leadsto \left(-p\right) \cdot \log p - \left(1 - p\right) \cdot \log \left(1 - p\right)\]

Reproduce

herbie shell --seed 2020152 
(FPCore (p)
  :name "(- (* (- p) (log p)) (* (- 1 p) (log (- 1 p))))"
  :precision binary64
  (- (* (neg p) (log p)) (* (- 1.0 p) (log (- 1.0 p)))))