Average Error: 16.3 → 8.6
Time: 4.8m
Precision: 64
Internal Precision: 2944
\[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
\[\begin{array}{l} \mathbf{if}\;\ell \le -2.4471293693330473 \cdot 10^{+73}:\\ \;\;\;\;\pi \cdot \ell - \frac{\frac{\sin \left(\frac{\pi}{\ell}\right)}{F}}{\cos \left(\frac{\pi}{\ell}\right) \cdot F}\\ \mathbf{if}\;\ell \le 4.0297416941638086 \cdot 10^{+95}:\\ \;\;\;\;\ell \cdot \pi - \frac{1}{F} \cdot \frac{\tan \left(\ell \cdot \pi\right)}{F}\\ \mathbf{else}:\\ \;\;\;\;\pi \cdot \ell - \frac{\frac{\sin \left(\frac{\pi}{\ell}\right)}{F}}{\cos \left(\frac{\pi}{\ell}\right) \cdot F}\\ \end{array}\]

Error

Bits error versus F

Bits error versus l

Derivation

  1. Split input into 2 regimes
  2. if l < -2.4471293693330473e+73 or 4.0297416941638086e+95 < l

    1. Initial program 21.9

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Applied simplify21.9

      \[\leadsto \color{blue}{\ell \cdot \pi - \frac{\tan \left(\ell \cdot \pi\right)}{F \cdot F}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity21.9

      \[\leadsto \ell \cdot \pi - \frac{\color{blue}{1 \cdot \tan \left(\ell \cdot \pi\right)}}{F \cdot F}\]
    5. Applied times-frac21.9

      \[\leadsto \ell \cdot \pi - \color{blue}{\frac{1}{F} \cdot \frac{\tan \left(\ell \cdot \pi\right)}{F}}\]
    6. Taylor expanded around inf 12.4

      \[\leadsto \ell \cdot \pi - \frac{1}{F} \cdot \frac{\color{blue}{\frac{\sin \left(\frac{\pi}{\ell}\right)}{\cos \left(\frac{\pi}{\ell}\right)}}}{F}\]
    7. Applied simplify12.4

      \[\leadsto \color{blue}{\pi \cdot \ell - \frac{\frac{\sin \left(\frac{\pi}{\ell}\right)}{F}}{\cos \left(\frac{\pi}{\ell}\right) \cdot F}}\]

    if -2.4471293693330473e+73 < l < 4.0297416941638086e+95

    1. Initial program 12.6

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Applied simplify12.2

      \[\leadsto \color{blue}{\ell \cdot \pi - \frac{\tan \left(\ell \cdot \pi\right)}{F \cdot F}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity12.2

      \[\leadsto \ell \cdot \pi - \frac{\color{blue}{1 \cdot \tan \left(\ell \cdot \pi\right)}}{F \cdot F}\]
    5. Applied times-frac6.0

      \[\leadsto \ell \cdot \pi - \color{blue}{\frac{1}{F} \cdot \frac{\tan \left(\ell \cdot \pi\right)}{F}}\]
  3. Recombined 2 regimes into one program.
  4. Removed slow pow expressions.

Runtime

Time bar (total: 4.8m)Debug logProfile

herbie shell --seed '#(1063313015 2771194459 1594909340 1344785158 2223560818 546365448)' 
(FPCore (F l)
  :name "VandenBroeck and Keller, Equation (6)"
  (- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))