Average Error: 0.2 → 0.3
Time: 58.3s
Precision: 64
Internal Precision: 128
\[\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t\]
\[\left(\sqrt[3]{\left(\left(\log \left(y + x\right) + \log z\right) \cdot \left(\log \left(y + x\right) + \log z\right)\right) \cdot \left(\log \left(y + x\right) + \log z\right)} - t\right) + \log t \cdot \left(a - 0.5\right)\]

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t\]
  2. Using strategy rm
  3. Applied add-cbrt-cube0.3

    \[\leadsto \left(\color{blue}{\sqrt[3]{\left(\left(\log \left(x + y\right) + \log z\right) \cdot \left(\log \left(x + y\right) + \log z\right)\right) \cdot \left(\log \left(x + y\right) + \log z\right)}} - t\right) + \left(a - 0.5\right) \cdot \log t\]
  4. Final simplification0.3

    \[\leadsto \left(\sqrt[3]{\left(\left(\log \left(y + x\right) + \log z\right) \cdot \left(\log \left(y + x\right) + \log z\right)\right) \cdot \left(\log \left(y + x\right) + \log z\right)} - t\right) + \log t \cdot \left(a - 0.5\right)\]

Reproduce

herbie shell --seed 2019005 +o rules:numerics
(FPCore (x y z t a)
  :name "Numeric.SpecFunctions:logGammaL from math-functions-0.1.5.2"
  (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))))

Details

Time bar (total: 55.8s)Debug log

sample795.0ms

Algorithm
intervals

simplify340.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

340.0ms
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t)))

prune20.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.2b

localize26.0ms

Local error

Found 4 expressions with local error:

0.6b
(+ (log (+ x y)) (log z))
0.1b
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t)))
0.1b
(* (- a 0.5) (log t))
0.0b
(- (+ (log (+ x y)) (log z)) t)

rewrite201.0ms

Algorithm
rewrite-expression-head
Counts
4 → 90
Calls

4 calls. Slowest were:

131.0ms
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t)))
56.0ms
(- (+ (log (+ x y)) (log z)) t)
8.0ms
(* (- a 0.5) (log t))

series590.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

235.0ms
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t)))
223.0ms
(- (+ (log (+ x y)) (log z)) t)
81.0ms
(+ (log (+ x y)) (log z))
52.0ms
(* (- a 0.5) (log t))

simplify3.9s

Counts
52 → 102
Calls

52 calls. Slowest were:

378.0ms
(- (+ (* a (log t)) (+ (log z) (log y))) (+ t (* 0.5 (log t))))
342.0ms
(- (+ (* 0.5 (log (/ -1 t))) (* a (log -1))) (+ (* a (log (/ -1 t))) (* 0.5 (log -1))))
252.0ms
(- (* 0.5 (log (/ 1 t))) (+ t (+ (log (/ 1 z)) (+ (log (/ 1 x)) (* a (log (/ 1 t)))))))

prune1.6s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 0.0b

localize18.0ms

Local error

Found 4 expressions with local error:

0.6b
(+ (log (+ x y)) (log z))
0.6b
(+ (log (+ x y)) (log z))
0.6b
(+ (log (+ x y)) (log z))
0.5b
(cbrt (* (* (+ (log (+ x y)) (log z)) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z))))

rewrite40.0ms

Algorithm
rewrite-expression-head
Counts
4 → 110
Calls

4 calls. Slowest were:

24.0ms
(cbrt (* (* (+ (log (+ x y)) (log z)) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z))))
5.0ms
(+ (log (+ x y)) (log z))
5.0ms
(+ (log (+ x y)) (log z))

series316.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

96.0ms
(+ (log (+ x y)) (log z))
79.0ms
(+ (log (+ x y)) (log z))
77.0ms
(cbrt (* (* (+ (log (+ x y)) (log z)) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z))))
64.0ms
(+ (log (+ x y)) (log z))

simplify10.0s

Counts
70 → 122
Calls

70 calls. Slowest were:

898.0ms
(cbrt (* (* (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z))) (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z)))) (+ (pow (log (+ x y)) 3) (pow (log z) 3))))
865.0ms
(cbrt (* (* (+ (pow (log (+ x y)) 3) (pow (log z) 3)) (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z)))) (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z)))))
851.0ms
(cbrt (* (* (+ (pow (log (+ x y)) 3) (pow (log z) 3)) (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z)))) (+ (log (+ x y)) (log z))))

prune2.4s

Pruning

12 alts after pruning (11 fresh and 1 done)

Merged error: 0.0b

localize31.0ms

Local error

Found 4 expressions with local error:

0.7b
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))
0.6b
(+ (log (+ x y)) (log z))
0.5b
(* (cbrt (- a 0.5)) (log t))
0.3b
(* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (log t)))

rewrite43.0ms

Algorithm
rewrite-expression-head
Counts
4 → 136
Calls

4 calls. Slowest were:

24.0ms
(* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (log t)))
5.0ms
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))
5.0ms
(+ (log (+ x y)) (log z))

series409.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

120.0ms
(* (cbrt (- a 0.5)) (log t))
103.0ms
(* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (log t)))
92.0ms
(+ (log (+ x y)) (log z))
92.0ms
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))

simplify10.3s

Counts
123 → 148
Calls

123 calls. Slowest were:

779.0ms
(* (* (* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (cbrt (- a 0.5)))) (* (cbrt (- a 0.5)) (cbrt (- a 0.5)))) (* (- a 0.5) (* (* (log t) (log t)) (log t))))
626.0ms
(* (* (- a 0.5) (- a 0.5)) (* (* (* (cbrt (- a 0.5)) (log t)) (* (cbrt (- a 0.5)) (log t))) (* (cbrt (- a 0.5)) (log t))))
495.0ms
(* (* (* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (cbrt (- a 0.5)))) (* (cbrt (- a 0.5)) (cbrt (- a 0.5)))) (* (* (* (cbrt (- a 0.5)) (log t)) (* (cbrt (- a 0.5)) (log t))) (* (cbrt (- a 0.5)) (log t))))

prune2.9s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 0.0b

localize8.0ms

Local error

Found 4 expressions with local error:

0.7b
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))
0.6b
(+ (log (+ x y)) (log z))
0.6b
(+ (log (+ x y)) (log z))
0.6b
(+ (log (+ x y)) (log z))

rewrite20.0ms

Algorithm
rewrite-expression-head
Counts
4 → 110
Calls

4 calls. Slowest were:

5.0ms
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))
5.0ms
(+ (log (+ x y)) (log z))
5.0ms
(+ (log (+ x y)) (log z))

series280.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

82.0ms
(+ (log (+ x y)) (log z))
70.0ms
(+ (log (+ x y)) (log z))
64.0ms
(* (cbrt (- a 0.5)) (cbrt (- a 0.5)))
64.0ms
(+ (log (+ x y)) (log z))

simplify2.5s

Counts
74 → 122
Calls

74 calls. Slowest were:

288.0ms
(- (* 2 (log -1)) (+ (log (/ -1 x)) (log (/ -1 z))))
246.0ms
(- (* 2 (log -1)) (+ (log (/ -1 x)) (log (/ -1 z))))
235.0ms
(- (* 2 (log -1)) (+ (log (/ -1 x)) (log (/ -1 z))))

prune2.6s

Pruning

13 alts after pruning (11 fresh and 2 done)

Merged error: 0.0b

regimes1.6s

Accuracy

0% (0.2b remaining)

Error of 0.3b against oracle of 0.1b and baseline of 0.3b

bsearch4.0ms

end0.0ms

sample14.9s

Algorithm
intervals