Average Error: 0.1 → 0.1
Time: 1.1m
Precision: 64
Internal Precision: 576
\[\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\]
\[\left((\left(m \cdot m\right) \cdot \left(\frac{-1}{v}\right) + \left(\frac{m}{v}\right))_* - 1\right) \cdot \left(1 - m\right)\]

Error

Bits error versus m

Bits error versus v

Derivation

  1. Initial program 0.1

    \[\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\]
  2. Taylor expanded around 0 0.1

    \[\leadsto \left(\color{blue}{\left(\frac{m}{v} - \frac{{m}^{2}}{v}\right)} - 1\right) \cdot \left(1 - m\right)\]
  3. Using strategy rm
  4. Applied div-inv0.1

    \[\leadsto \left(\left(\frac{m}{v} - \color{blue}{{m}^{2} \cdot \frac{1}{v}}\right) - 1\right) \cdot \left(1 - m\right)\]
  5. Applied add-sqr-sqrt0.3

    \[\leadsto \left(\left(\color{blue}{\sqrt{\frac{m}{v}} \cdot \sqrt{\frac{m}{v}}} - {m}^{2} \cdot \frac{1}{v}\right) - 1\right) \cdot \left(1 - m\right)\]
  6. Applied prod-diff0.3

    \[\leadsto \left(\color{blue}{\left((\left(\sqrt{\frac{m}{v}}\right) \cdot \left(\sqrt{\frac{m}{v}}\right) + \left(-\frac{1}{v} \cdot {m}^{2}\right))_* + (\left(-\frac{1}{v}\right) \cdot \left({m}^{2}\right) + \left(\frac{1}{v} \cdot {m}^{2}\right))_*\right)} - 1\right) \cdot \left(1 - m\right)\]
  7. Simplified0.1

    \[\leadsto \left(\left(\color{blue}{(\left(m \cdot m\right) \cdot \left(\frac{-1}{v}\right) + \left(\frac{m}{v}\right))_*} + (\left(-\frac{1}{v}\right) \cdot \left({m}^{2}\right) + \left(\frac{1}{v} \cdot {m}^{2}\right))_*\right) - 1\right) \cdot \left(1 - m\right)\]
  8. Simplified0.1

    \[\leadsto \left(\left((\left(m \cdot m\right) \cdot \left(\frac{-1}{v}\right) + \left(\frac{m}{v}\right))_* + \color{blue}{0}\right) - 1\right) \cdot \left(1 - m\right)\]
  9. Final simplification0.1

    \[\leadsto \left((\left(m \cdot m\right) \cdot \left(\frac{-1}{v}\right) + \left(\frac{m}{v}\right))_* - 1\right) \cdot \left(1 - m\right)\]

Runtime

Time bar (total: 1.1m)Debug logProfile

herbie shell --seed 2018254 +o rules:numerics
(FPCore (m v)
  :name "b parameter of renormalized beta distribution"
  :pre (and (< 0 m) (< 0 v) (< v 0.25))
  (* (- (/ (* m (- 1 m)) v) 1) (- 1 m)))