\[\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t\]
Test:
Numeric.SpecFunctions:logGammaL from math-functions-0.1.5.2
Bits:
128 bits
Bits error versus x
Bits error versus y
Bits error versus z
Bits error versus t
Bits error versus a
Time: 30.5 s
Input Error: 0.2
Output Error: 0.3
Log:
Profile: 🕒
\((\left(a - 0.5\right) * \left(\log t\right) + \left(\log \left(x + y\right)\right))_* + \left(\log z - t\right)\)
  1. Started with
    \[\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t\]
    0.2
  2. Applied simplify to get
    \[\color{red}{\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t} \leadsto \color{blue}{\log \left(x + y\right) + \left((\left(a - 0.5\right) * \left(\log t\right) + \left(\log z\right))_* - t\right)}\]
    0.3
  3. Using strategy rm
    0.3
  4. Applied fma-udef to get
    \[\log \left(x + y\right) + \left(\color{red}{(\left(a - 0.5\right) * \left(\log t\right) + \left(\log z\right))_*} - t\right) \leadsto \log \left(x + y\right) + \left(\color{blue}{\left(\left(a - 0.5\right) \cdot \log t + \log z\right)} - t\right)\]
    0.3
  5. Applied associate--l+ to get
    \[\log \left(x + y\right) + \color{red}{\left(\left(\left(a - 0.5\right) \cdot \log t + \log z\right) - t\right)} \leadsto \log \left(x + y\right) + \color{blue}{\left(\left(a - 0.5\right) \cdot \log t + \left(\log z - t\right)\right)}\]
    0.3
  6. Applied associate-+r+ to get
    \[\color{red}{\log \left(x + y\right) + \left(\left(a - 0.5\right) \cdot \log t + \left(\log z - t\right)\right)} \leadsto \color{blue}{\left(\log \left(x + y\right) + \left(a - 0.5\right) \cdot \log t\right) + \left(\log z - t\right)}\]
    0.3
  7. Applied simplify to get
    \[\color{red}{\left(\log \left(x + y\right) + \left(a - 0.5\right) \cdot \log t\right)} + \left(\log z - t\right) \leadsto \color{blue}{(\left(a - 0.5\right) * \left(\log t\right) + \left(\log \left(x + y\right)\right))_*} + \left(\log z - t\right)\]
    0.3

  8. Removed slow pow expressions

Original test:


(lambda ((x default) (y default) (z default) (t default) (a default))
  #:name "Numeric.SpecFunctions:logGammaL from math-functions-0.1.5.2"
  (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))))