\[\sin \left(x + \varepsilon\right) - \sin x\]
Test:
NMSE example 3.3
Bits:
128 bits
Bits error versus x
Bits error versus eps
Time: 27.7 s
Input Error: 35.5
Output Error: 1.8
Log:
Profile: 🕒
\(\begin{cases} (e^{\log_* (1 + \sin x \cdot \cos \varepsilon)} - 1)^* + \left(\cos x \cdot \sin \varepsilon - \sin x\right) & \text{when } \varepsilon \le -5.952085980018888 \cdot 10^{-41} \\ \varepsilon - \left(\left(x \cdot \varepsilon\right) \cdot \left(\varepsilon + x\right)\right) \cdot \frac{1}{2} & \text{when } \varepsilon \le 7.687581306962853 \cdot 10^{-33} \\ (\left(\cos x\right) * \left(\sin \varepsilon\right) + \left(\cos \varepsilon \cdot \sin x\right))_* + \left(-\sin x\right) & \text{otherwise} \end{cases}\)

    if eps < -5.952085980018888e-41

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      29.6
    2. Using strategy rm
      29.6
    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.5
    4. Applied associate--l+ to get
      \[\color{red}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right) - \sin x} \leadsto \color{blue}{\sin x \cdot \cos \varepsilon + \left(\cos x \cdot \sin \varepsilon - \sin x\right)}\]
      3.5
    5. Using strategy rm
      3.5
    6. Applied expm1-log1p-u to get
      \[\color{red}{\sin x \cdot \cos \varepsilon} + \left(\cos x \cdot \sin \varepsilon - \sin x\right) \leadsto \color{blue}{(e^{\log_* (1 + \sin x \cdot \cos \varepsilon)} - 1)^*} + \left(\cos x \cdot \sin \varepsilon - \sin x\right)\]
      3.5

    if -5.952085980018888e-41 < eps < 7.687581306962853e-33

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      44.4
    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.0
    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.0
    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 - \left(\left(x \cdot \varepsilon\right) \cdot \left(\varepsilon + x\right)\right) \cdot \frac{1}{2}}\]
      0.1

    if 7.687581306962853e-33 < eps

    1. Started with
      \[\sin \left(x + \varepsilon\right) - \sin x\]
      29.1
    2. Using strategy rm
      29.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\]
      2.3
    4. Applied associate--l+ to get
      \[\color{red}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right) - \sin x} \leadsto \color{blue}{\sin x \cdot \cos \varepsilon + \left(\cos x \cdot \sin \varepsilon - \sin x\right)}\]
      2.3
    5. Using strategy rm
      2.3
    6. Applied sub-neg to get
      \[\sin x \cdot \cos \varepsilon + \color{red}{\left(\cos x \cdot \sin \varepsilon - \sin x\right)} \leadsto \sin x \cdot \cos \varepsilon + \color{blue}{\left(\cos x \cdot \sin \varepsilon + \left(-\sin x\right)\right)}\]
      2.3
    7. Applied associate-+r+ to get
      \[\color{red}{\sin x \cdot \cos \varepsilon + \left(\cos x \cdot \sin \varepsilon + \left(-\sin x\right)\right)} \leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right) + \left(-\sin x\right)}\]
      2.3
    8. Applied simplify to get
      \[\color{red}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} + \left(-\sin x\right) \leadsto \color{blue}{(\left(\cos x\right) * \left(\sin \varepsilon\right) + \left(\cos \varepsilon \cdot \sin x\right))_*} + \left(-\sin x\right)\]
      2.3

  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)))))