


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 add-cbrt-cube0.3
Final simplification0.3
herbie shell --seed 2019005
(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: 52.6s)Debug log
1 calls. Slowest were:
| 341.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 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) |
4 calls. Slowest were:
| 143.0ms | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
| 41.0ms | (- (+ (log (+ x y)) (log z)) t) |
| 8.0ms | (* (- a 0.5) (log t)) |
4 calls. Slowest were:
| 208.0ms | (+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))) |
| 145.0ms | (- (+ (log (+ x y)) (log z)) t) |
| 89.0ms | (+ (log (+ x y)) (log z)) |
| 46.0ms | (* (- a 0.5) (log t)) |
46 calls. Slowest were:
| 372.0ms | (- (+ (* a (log t)) (+ (log z) (log y))) (+ t (* 0.5 (log t)))) |
| 271.0ms | (- (* 0.5 (log (/ 1 t))) (+ t (+ (log (/ 1 z)) (+ (log (/ 1 x)) (* a (log (/ 1 t))))))) |
| 242.0ms | (- (+ (* 0.5 (log (/ -1 t))) (* a (log -1))) (+ (* a (log (/ -1 t))) (* 0.5 (log -1)))) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 0.0b
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)))) |
4 calls. Slowest were:
| 24.0ms | (cbrt (* (* (+ (log (+ x y)) (log z)) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z)))) |
| 8.0ms | (+ (log (+ x y)) (log z)) |
| 7.0ms | (+ (log (+ x y)) (log z)) |
4 calls. Slowest were:
| 70.0ms | (cbrt (* (* (+ (log (+ x y)) (log z)) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z)))) |
| 68.0ms | (+ (log (+ x y)) (log z)) |
| 66.0ms | (+ (log (+ x y)) (log z)) |
| 63.0ms | (+ (log (+ x y)) (log z)) |
64 calls. Slowest were:
| 806.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)))) |
| 724.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))))) |
| 670.0ms | (cbrt (* (* (- (* (log (+ x y)) (log (+ x y))) (* (log z) (log z))) (+ (log (+ x y)) (log z))) (+ (log (+ x y)) (log z)))) |
12 alts after pruning (11 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.7b | (pow (log (+ x y)) 3) |
| 0.7b | (pow (log z) 3) |
| 0.5b | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 0.5b | (* (log z) (log z)) |
4 calls. Slowest were:
| 5.0ms | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 4.0ms | (* (log z) (log z)) |
| 1.0ms | (pow (log (+ x y)) 3) |
4 calls. Slowest were:
| 304.0ms | (pow (log (+ x y)) 3) |
| 218.0ms | (pow (log z) 3) |
| 195.0ms | (- (* (log z) (log z)) (* (log (+ x y)) (log z))) |
| 168.0ms | (* (log z) (log z)) |
46 calls. Slowest were:
| 375.0ms | (pow (- (log -1) (log (/ -1 x))) 3) |
| 302.0ms | (pow (- (log -1) (log (/ -1 z))) 3) |
| 296.0ms | (pow (- (log -1) (log (/ -1 z))) 2) |
13 alts after pruning (11 fresh and 2 done)
Merged error: 0.0b
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))) |
4 calls. Slowest were:
| 41.0ms | (* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (log t))) |
| 11.0ms | (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) |
| 9.0ms | (* (cbrt (- a 0.5)) (log t)) |
4 calls. Slowest were:
| 112.0ms | (* (cbrt (- a 0.5)) (log t)) |
| 97.0ms | (+ (log (+ x y)) (log z)) |
| 87.0ms | (* (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) (* (cbrt (- a 0.5)) (log t))) |
| 72.0ms | (* (cbrt (- a 0.5)) (cbrt (- a 0.5))) |
121 calls. Slowest were:
| 656.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)))) |
| 446.0ms | (* (cbrt (- (* a a) (* 0.5 0.5))) (cbrt (- (pow a 3) (pow 0.5 3)))) |
| 445.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)))) |
15 alts after pruning (12 fresh and 3 done)
Merged error: 0.0b
0% (0.3b remaining)
Error of 0.3b against oracle of 0.0b and baseline of 0.3b