\[\sin \left(x + \varepsilon\right) - \sin x\]
Test:
NMSE example 3.3
Bits:
128 bits
Bits error versus x
Bits error versus eps
Time: 25.2 s
Input Error: 36.3
Output Error: 2.7
Log:
Profile: 🕒
\(\begin{cases} \left(\sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\cos \varepsilon\right)}^3} + \cos x \cdot \sin \varepsilon\right) - \sin x & \text{when } \varepsilon \le -3.484092632009674 \cdot 10^{-67} \\ \varepsilon - \frac{1}{2} \cdot \left(\left(\varepsilon + x\right) \cdot \left(x \cdot \varepsilon\right)\right) & \text{when } \varepsilon \le 2.1094196219887136 \cdot 10^{-42} \\ \left(\log \left(e^{\sin x \cdot \cos \varepsilon}\right) + \cos x \cdot \sin \varepsilon\right) - \sin x & \text{otherwise} \end{cases}\)

    if eps < -3.484092632009674e-67

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      31.1
    2. Using strategy rm
      31.1
    3. Applied sin-sum to get
      \[\color{red}{\sin \left(x + \varepsilon\right)} - \sin x \leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} - \sin x\]
      5.3
    4. Using strategy rm
      5.3
    5. Applied add-cbrt-cube to get
      \[\left(\sin x \cdot \color{red}{\cos \varepsilon} + \cos x \cdot \sin \varepsilon\right) - \sin x \leadsto \left(\sin x \cdot \color{blue}{\sqrt[3]{{\left(\cos \varepsilon\right)}^3}} + \cos x \cdot \sin \varepsilon\right) - \sin x\]
      5.4
    6. Applied add-cbrt-cube to get
      \[\left(\color{red}{\sin x} \cdot \sqrt[3]{{\left(\cos \varepsilon\right)}^3} + \cos x \cdot \sin \varepsilon\right) - \sin x \leadsto \left(\color{blue}{\sqrt[3]{{\left(\sin x\right)}^3}} \cdot \sqrt[3]{{\left(\cos \varepsilon\right)}^3} + \cos x \cdot \sin \varepsilon\right) - \sin x\]
      5.4
    7. Applied cbrt-unprod to get
      \[\left(\color{red}{\sqrt[3]{{\left(\sin x\right)}^3} \cdot \sqrt[3]{{\left(\cos \varepsilon\right)}^3}} + \cos x \cdot \sin \varepsilon\right) - \sin x \leadsto \left(\color{blue}{\sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\cos \varepsilon\right)}^3}} + \cos x \cdot \sin \varepsilon\right) - \sin x\]
      5.3

    if -3.484092632009674e-67 < eps < 2.1094196219887136e-42

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      45.8
    2. Applied taylor to get
      \[\sin \left(x + \varepsilon\right) - \sin x \leadsto \varepsilon - \left(\frac{1}{2} \cdot \left(\varepsilon \cdot {x}^2\right) + \frac{1}{2} \cdot \left({\varepsilon}^2 \cdot x\right)\right)\]
      10.1
    3. Taylor expanded around 0 to get
      \[\color{red}{\varepsilon - \left(\frac{1}{2} \cdot \left(\varepsilon \cdot {x}^2\right) + \frac{1}{2} \cdot \left({\varepsilon}^2 \cdot x\right)\right)} \leadsto \color{blue}{\varepsilon - \left(\frac{1}{2} \cdot \left(\varepsilon \cdot {x}^2\right) + \frac{1}{2} \cdot \left({\varepsilon}^2 \cdot x\right)\right)}\]
      10.1
    4. Applied simplify to get
      \[\color{red}{\varepsilon - \left(\frac{1}{2} \cdot \left(\varepsilon \cdot {x}^2\right) + \frac{1}{2} \cdot \left({\varepsilon}^2 \cdot x\right)\right)} \leadsto \color{blue}{\varepsilon - \frac{1}{2} \cdot \left(\left(\varepsilon + x\right) \cdot \left(x \cdot \varepsilon\right)\right)}\]
      0.1

    if 2.1094196219887136e-42 < eps

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      29.0
    2. Using strategy rm
      29.0
    3. Applied sin-sum to get
      \[\color{red}{\sin \left(x + \varepsilon\right)} - \sin x \leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} - \sin x\]
      3.2
    4. Using strategy rm
      3.2
    5. Applied add-log-exp to get
      \[\left(\color{red}{\sin x \cdot \cos \varepsilon} + \cos x \cdot \sin \varepsilon\right) - \sin x \leadsto \left(\color{blue}{\log \left(e^{\sin x \cdot \cos \varepsilon}\right)} + \cos x \cdot \sin \varepsilon\right) - \sin x\]
      3.4

  1. Removed slow pow expressions

Original test:


(lambda ((x default) (eps default))
  #:name "NMSE example 3.3"
  (- (sin (+ x eps)) (sin x))
  #:target
  (* 2 (* (cos (+ x (/ eps 2))) (sin (/ eps 2)))))