


Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i
Results
Initial program 28.6
Final simplification28.6
herbie shell --seed 2019007 +o rules:numerics
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
(/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))
Time bar (total: 1.2m)Debug log
1 calls. Slowest were:
| 146.0ms | (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 28.5b
Found 4 expressions with local error:
| 28.5b | (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 0.1b | (* (+ (* (+ y a) y) b) y) |
| 0.1b | (* (+ (* (+ (* x y) z) y) 27464.7644705) y) |
| 0.1b | (* (+ (* (+ (* (+ y a) y) b) y) c) y) |
4 calls. Slowest were:
| 40.0ms | (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 18.0ms | (* (+ (* (+ (* x y) z) y) 27464.7644705) y) |
| 15.0ms | (* (+ (* (+ (* (+ y a) y) b) y) c) y) |
4 calls. Slowest were:
| 304.0ms | (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 45.0ms | (* (+ (* (+ (* x y) z) y) 27464.7644705) y) |
| 44.0ms | (* (+ (* (+ (* (+ y a) y) b) y) c) y) |
| 28.0ms | (* (+ (* (+ y a) y) b) y) |
53 calls. Slowest were:
| 668.0ms | (* (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)) (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t))) |
| 465.0ms | (+ (* (* (+ (* (+ (* (+ y a) y) b) y) c) y) (* (+ (* (+ (* (+ y a) y) b) y) c) y)) (- (* i i) (* (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 461.0ms | (+ (pow (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) 3) (pow t 3)) |
13 alts after pruning (12 fresh and 1 done)
Merged error: 27.8b
Found 4 expressions with local error:
| 28.4b | (* (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 0.9b | (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 0.1b | (* (+ (* (+ y a) y) b) y) |
| 0.1b | (* (+ (* (+ (* x y) z) y) 27464.7644705) y) |
4 calls. Slowest were:
| 50.0ms | (* (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 32.0ms | (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 16.0ms | (* (+ (* (+ y a) y) b) y) |
4 calls. Slowest were:
| 328.0ms | (* (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 45.0ms | (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
| 39.0ms | (* (+ (* (+ (* x y) z) y) 27464.7644705) y) |
| 36.0ms | (* (+ (* (+ y a) y) b) y) |
46 calls. Slowest were:
| 555.0ms | (* (+ (pow (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) 3) (pow t 3)) 1) |
| 526.0ms | (* (- (* (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y)) (* t t)) 1) |
| 457.0ms | (sqrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)) |
12 alts after pruning (10 fresh and 2 done)
Merged error: 27.8b
Found 4 expressions with local error:
| 28.4b | (* (+ (* (+ (* (* (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 22.3b | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
| 22.3b | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
| 22.3b | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
4 calls. Slowest were:
| 425.0ms | (* (+ (* (+ (* (* (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 8.0ms | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
| 5.0ms | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
4 calls. Slowest were:
| 434.0ms | (* (+ (* (+ (* (* (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) 230661.510616) y) t) (/ 1 (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 218.0ms | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
| 214.0ms | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
| 175.0ms | (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) |
41 calls. Slowest were:
| 537.0ms | (* (+ (pow (* (+ (* (* (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) 230661.510616) y) 3) (pow t 3)) 1) |
| 501.0ms | (+ (* (* (+ (* (+ (* (+ y a) y) b) y) c) y) (* (+ (* (+ (* (+ y a) y) b) y) c) y)) (- (* i i) (* (* (+ (* (+ (* (+ y a) y) b) y) c) y) i))) |
| 461.0ms | (* (- (* (+ (* (* (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y)) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) (cbrt (* (+ (* (+ (* x y) z) y) 27464.7644705) y))) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) |
12 alts after pruning (10 fresh and 2 done)
Merged error: 27.8b
Found 4 expressions with local error:
| 24.1b | (/ (* (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t))) (/ (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i) (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)))) |
| 18.6b | (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) |
| 18.6b | (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) |
| 18.6b | (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)) |
4 calls. Slowest were:
| 74.0ms | (/ (* (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t))) (/ (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i) (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)))) |
| 26.0ms | (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)) |
| 1.0ms | (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) |
4 calls. Slowest were:
| 453.0ms | (/ (* (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t))) (/ (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i) (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)))) |
| 220.0ms | (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)) |
| 197.0ms | (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) |
| 182.0ms | (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) |
105 calls. Slowest were:
| 684.0ms | (/ (cbrt (fma y (fma (* y y) (fma y x z) (fma y 27464.7644705 230661.510616)) t)) (/ (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i) (sqrt (cbrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t))))) |
| 385.0ms | (cbrt (+ (pow (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) 3) (pow t 3))) |
| 362.0ms | (cbrt (sqrt (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t))) |
11 alts after pruning (9 fresh and 2 done)
Merged error: 27.8b
0% (0.7b remaining)
Error of 28.6b against oracle of 27.8b and baseline of 28.6b