Average Error: 58.6 → 0.0
Time: 19.2s
Precision: 64
Internal Precision: 1344
\[\log \left(\frac{1 - \varepsilon}{1 + \varepsilon}\right)\]
\[\log_* (1 + \left(-\varepsilon\right)) - \log_* (1 + \varepsilon)\]

Error

Bits error versus eps

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original58.6
Target0.2
Herbie0.0
\[-2 \cdot \left(\left(\varepsilon + \frac{{\varepsilon}^{3}}{3}\right) + \frac{{\varepsilon}^{5}}{5}\right)\]

Derivation

  1. Initial program 58.6

    \[\log \left(\frac{1 - \varepsilon}{1 + \varepsilon}\right)\]
  2. Initial simplification58.6

    \[\leadsto \log \left(\frac{1 - \varepsilon}{\varepsilon + 1}\right)\]
  3. Using strategy rm
  4. Applied add-exp-log58.6

    \[\leadsto \log \left(\frac{1 - \varepsilon}{\color{blue}{e^{\log \left(\varepsilon + 1\right)}}}\right)\]
  5. Applied add-exp-log58.6

    \[\leadsto \log \left(\frac{\color{blue}{e^{\log \left(1 - \varepsilon\right)}}}{e^{\log \left(\varepsilon + 1\right)}}\right)\]
  6. Applied div-exp58.6

    \[\leadsto \log \color{blue}{\left(e^{\log \left(1 - \varepsilon\right) - \log \left(\varepsilon + 1\right)}\right)}\]
  7. Applied rem-log-exp58.6

    \[\leadsto \color{blue}{\log \left(1 - \varepsilon\right) - \log \left(\varepsilon + 1\right)}\]
  8. Using strategy rm
  9. Applied pow158.6

    \[\leadsto \log \left(1 - \varepsilon\right) - \log \color{blue}{\left({\left(\varepsilon + 1\right)}^{1}\right)}\]
  10. Applied log-pow58.6

    \[\leadsto \log \left(1 - \varepsilon\right) - \color{blue}{1 \cdot \log \left(\varepsilon + 1\right)}\]
  11. Applied *-un-lft-identity58.6

    \[\leadsto \color{blue}{1 \cdot \log \left(1 - \varepsilon\right)} - 1 \cdot \log \left(\varepsilon + 1\right)\]
  12. Applied distribute-lft-out--58.6

    \[\leadsto \color{blue}{1 \cdot \left(\log \left(1 - \varepsilon\right) - \log \left(\varepsilon + 1\right)\right)}\]
  13. Simplified50.5

    \[\leadsto 1 \cdot \color{blue}{\left(\log \left(1 - \varepsilon\right) - \log_* (1 + \varepsilon)\right)}\]
  14. Using strategy rm
  15. Applied sub-neg50.5

    \[\leadsto 1 \cdot \left(\log \color{blue}{\left(1 + \left(-\varepsilon\right)\right)} - \log_* (1 + \varepsilon)\right)\]
  16. Applied log1p-def0.0

    \[\leadsto 1 \cdot \left(\color{blue}{\log_* (1 + \left(-\varepsilon\right))} - \log_* (1 + \varepsilon)\right)\]
  17. Final simplification0.0

    \[\leadsto \log_* (1 + \left(-\varepsilon\right)) - \log_* (1 + \varepsilon)\]

Runtime

Time bar (total: 19.2s)Debug logProfile

BaselineHerbieOracleSpan%
Regimes0.00.00.00.00%
herbie shell --seed 2018290 +o rules:numerics
(FPCore (eps)
  :name "logq (problem 3.4.3)"

  :herbie-target
  (* -2 (+ (+ eps (/ (pow eps 3) 3)) (/ (pow eps 5) 5)))

  (log (/ (- 1 eps) (+ 1 eps))))