


Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
Results
Initial program 0.2
rmApplied flip3-+0.3
Final simplification0.3
herbie shell --seed 2019002
(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))))
Time bar (total: 33.2s)Debug log
1 calls. Slowest were:
| 332.0ms | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.3b
Found 3 expressions with local error:
| 0.6b | (+ (log (+ x y)) (log z)) |
| 0.2b | (* (- a 0.5) (log t)) |
| 0.1b | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
3 calls. Slowest were:
| 78.0ms | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
| 4.0ms | (+ (log (+ x y)) (log z)) |
| 4.0ms | (* (- a 0.5) (log t)) |
3 calls. Slowest were:
| 186.0ms | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
| 70.0ms | (+ (log (+ x y)) (log z)) |
| 62.0ms | (* (- a 0.5) (log t)) |
40 calls. Slowest were:
| 353.0ms | (- (+ (* a (log t)) (+ (log z) (log y))) (+ t (* 0.5 (log t)))) |
| 294.0ms | (- (+ (* 0.5 (log (/ -1 t))) (* a (log -1))) (+ (* a (log (/ -1 t))) (* 0.5 (log -1)))) |
| 235.0ms | (- (* 0.5 (log (/ 1 t))) (+ t (+ (log (/ 1 z)) (+ (log (/ 1 x)) (* a (log (/ 1 t))))))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.7b | (pow (log z) 3) |
| 0.7b | (pow (log (+ x y)) 3) |
| 0.6b | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 0.6b | (* (log z) (log z)) |
4 calls. Slowest were:
| 10.0ms | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 7.0ms | (* (log z) (log z)) |
| 2.0ms | (pow (log (+ x y)) 3) |
4 calls. Slowest were:
| 285.0ms | (pow (log (+ x y)) 3) |
| 260.0ms | (pow (log z) 3) |
| 202.0ms | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 192.0ms | (* (log z) (log z)) |
46 calls. Slowest were:
| 370.0ms | (pow (- (log -1) (log (/ -1 x))) 3) |
| 318.0ms | (pow (- (log -1) (log (/ -1 z))) 3) |
| 255.0ms | (pow (- (log -1) (log (/ -1 z))) 2) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.6b | (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z))) |
| 0.6b | (- (log (+ x y)) (log z)) |
| 0.6b | (* (log z) (log z)) |
| 0.5b | (* (log (+ x y)) (log (+ x y))) |
4 calls. Slowest were:
| 12.0ms | (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z))) |
| 10.0ms | (* (log (+ x y)) (log (+ x y))) |
| 9.0ms | (- (log (+ x y)) (log z)) |
4 calls. Slowest were:
| 176.0ms | (* (log z) (log z)) |
| 166.0ms | (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z))) |
| 130.0ms | (* (log (+ x y)) (log (+ x y))) |
| 91.0ms | (- (log (+ x y)) (log z)) |
60 calls. Slowest were:
| 340.0ms | (pow (- (log -1) (log (/ -1 z))) 2) |
| 317.0ms | (pow (- (log -1) (log (/ -1 x))) 2) |
| 163.0ms | (- (pow (log (/ 1 x)) 2) (pow (log (/ 1 z)) 2)) |
9 alts after pruning (7 fresh and 2 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.6b | (+ (log (+ x y)) (log z)) |
| 0.5b | (cbrt (log t)) |
| 0.5b | (cbrt (log t)) |
| 0.5b | (cbrt (log t)) |
4 calls. Slowest were:
| 9.0ms | (+ (log (+ x y)) (log z)) |
| 1.0ms | (cbrt (log t)) |
| 1.0ms | (cbrt (log t)) |
4 calls. Slowest were:
| 394.0ms | (cbrt (log t)) |
| 370.0ms | (cbrt (log t)) |
| 347.0ms | (cbrt (log t)) |
| 79.0ms | (+ (log (+ x y)) (log z)) |
29 calls. Slowest were:
| 253.0ms | (- (* 2 (log -1)) (+ (log (/ -1 x)) (log (/ -1 z)))) |
| 52.0ms | (log (- (* x x) (* y y))) |
| 50.0ms | (pow (- (log -1) (log (/ -1 t))) 1/3) |
11 alts after pruning (8 fresh and 3 done)
Merged error: 0.0b
0% (0.2b remaining)
Error of 0.3b against oracle of 0.1b and baseline of 0.3b