Average Error: 0.3 → 0.4
Time: 9.7s
Precision: 64
\[\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\]
\[\frac{\left(\sqrt{1} + \tan x\right) \cdot \log \left(e^{\sqrt{1} - \tan x}\right)}{1 + \tan x \cdot \tan x}\]
\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}
\frac{\left(\sqrt{1} + \tan x\right) \cdot \log \left(e^{\sqrt{1} - \tan x}\right)}{1 + \tan x \cdot \tan x}
double f(double x) {
        double r13112 = 1.0;
        double r13113 = x;
        double r13114 = tan(r13113);
        double r13115 = r13114 * r13114;
        double r13116 = r13112 - r13115;
        double r13117 = r13112 + r13115;
        double r13118 = r13116 / r13117;
        return r13118;
}

double f(double x) {
        double r13119 = 1.0;
        double r13120 = sqrt(r13119);
        double r13121 = x;
        double r13122 = tan(r13121);
        double r13123 = r13120 + r13122;
        double r13124 = r13120 - r13122;
        double r13125 = exp(r13124);
        double r13126 = log(r13125);
        double r13127 = r13123 * r13126;
        double r13128 = r13122 * r13122;
        double r13129 = r13119 + r13128;
        double r13130 = r13127 / r13129;
        return r13130;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.3

    \[\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt0.3

    \[\leadsto \frac{\color{blue}{\sqrt{1} \cdot \sqrt{1}} - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\]
  4. Applied difference-of-squares0.4

    \[\leadsto \frac{\color{blue}{\left(\sqrt{1} + \tan x\right) \cdot \left(\sqrt{1} - \tan x\right)}}{1 + \tan x \cdot \tan x}\]
  5. Using strategy rm
  6. Applied add-log-exp0.4

    \[\leadsto \frac{\left(\sqrt{1} + \tan x\right) \cdot \left(\sqrt{1} - \color{blue}{\log \left(e^{\tan x}\right)}\right)}{1 + \tan x \cdot \tan x}\]
  7. Applied add-log-exp0.4

    \[\leadsto \frac{\left(\sqrt{1} + \tan x\right) \cdot \left(\color{blue}{\log \left(e^{\sqrt{1}}\right)} - \log \left(e^{\tan x}\right)\right)}{1 + \tan x \cdot \tan x}\]
  8. Applied diff-log0.5

    \[\leadsto \frac{\left(\sqrt{1} + \tan x\right) \cdot \color{blue}{\log \left(\frac{e^{\sqrt{1}}}{e^{\tan x}}\right)}}{1 + \tan x \cdot \tan x}\]
  9. Simplified0.4

    \[\leadsto \frac{\left(\sqrt{1} + \tan x\right) \cdot \log \color{blue}{\left(e^{\sqrt{1} - \tan x}\right)}}{1 + \tan x \cdot \tan x}\]
  10. Final simplification0.4

    \[\leadsto \frac{\left(\sqrt{1} + \tan x\right) \cdot \log \left(e^{\sqrt{1} - \tan x}\right)}{1 + \tan x \cdot \tan x}\]

Reproduce

herbie shell --seed 2020042 +o rules:numerics
(FPCore (x)
  :name "Trigonometry B"
  :precision binary64
  (/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))))