


Bits error versus K



Bits error versus m



Bits error versus n



Bits error versus M



Bits error versus l
Results
Initial program 15.4
Taylor expanded around 0 1.4
Final simplification1.4
herbie shell --seed 2019007
(FPCore (K m n M l)
:name "Maksimov and Kolovsky, Equation (32)"
(* (cos (- (/ (* K (+ m n)) 2) M)) (exp (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))))))
Time bar (total: 21.3s)Debug log
1 calls. Slowest were:
| 114.0ms | (* (cos (- (/ (* K (+ m n)) 2) M)) (exp (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 15.9b
Found 4 expressions with local error:
| 35.4b | (cos (- (/ (* K (+ m n)) 2) M)) |
| 0.0b | (- (/ (* K (+ m n)) 2) M) |
| 0.0b | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 0.0b | (pow (- (/ (+ m n) 2) M) 2) |
4 calls. Slowest were:
| 91.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 12.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 5.0ms | (pow (- (/ (+ m n) 2) M) 2) |
4 calls. Slowest were:
| 137.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 70.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 65.0ms | (pow (- (/ (+ m n) 2) M) 2) |
| 58.0ms | (- (/ (* K (+ m n)) 2) M) |
29 calls. Slowest were:
| 309.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 302.0ms | (/ (exp (- (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n))))) |
| 291.0ms | (/ (/ 1 (exp (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n))))) |
3 alts after pruning (3 fresh and 0 done)
Merged error: 0.8b
Found 2 expressions with local error:
| 0.0b | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 0.0b | (pow (- (/ (+ m n) 2) M) 2) |
2 calls. Slowest were:
| 153.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 5.0ms | (pow (- (/ (+ m n) 2) M) 2) |
2 calls. Slowest were:
| 120.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 58.0ms | (pow (- (/ (+ m n) 2) M) 2) |
20 calls. Slowest were:
| 296.0ms | (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))) |
| 291.0ms | (/ (/ 1 (exp (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n))))) |
| 286.0ms | (/ (exp (- (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n))))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.8b
Found 4 expressions with local error:
| 45.2b | (cos (* (* (cbrt (- (/ (* K (+ m n)) 2) M)) (cbrt (- (/ (* K (+ m n)) 2) M))) (cbrt (- (/ (* K (+ m n)) 2) M)))) |
| 15.0b | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 15.0b | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 15.0b | (cbrt (- (/ (* K (+ m n)) 2) M)) |
4 calls. Slowest were:
| 24.0ms | (cos (* (* (cbrt (- (/ (* K (+ m n)) 2) M)) (cbrt (- (/ (* K (+ m n)) 2) M))) (cbrt (- (/ (* K (+ m n)) 2) M)))) |
| 4.0ms | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 4.0ms | (cbrt (- (/ (* K (+ m n)) 2) M)) |
4 calls. Slowest were:
| 267.0ms | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 240.0ms | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 227.0ms | (cbrt (- (/ (* K (+ m n)) 2) M)) |
| 62.0ms | (cos (* (* (cbrt (- (/ (* K (+ m n)) 2) M)) (cbrt (- (/ (* K (+ m n)) 2) M))) (cbrt (- (/ (* K (+ m n)) 2) M)))) |
27 calls. Slowest were:
| 403.0ms | (exp (* 1/3 (- (log 1/2) (+ (log (/ 1 m)) (log (/ 1 K)))))) |
| 368.0ms | (exp (* 1/3 (- (log 1/2) (+ (log (/ 1 m)) (log (/ 1 K)))))) |
| 330.0ms | (exp (* 1/3 (- (log 1/2) (+ (log (/ 1 m)) (log (/ 1 K)))))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.8b
Found 4 expressions with local error:
| 35.4b | (cos (- (/ (* K (+ m n)) 2) M)) |
| 35.4b | (cos (- (/ (* K (+ m n)) 2) M)) |
| 35.4b | (cos (- (/ (* K (+ m n)) 2) M)) |
| 0.5b | (cbrt (* (* (cos (- (/ (* K (+ m n)) 2) M)) (cos (- (/ (* K (+ m n)) 2) M))) (cos (- (/ (* K (+ m n)) 2) M)))) |
4 calls. Slowest were:
| 10.0ms | (cbrt (* (* (cos (- (/ (* K (+ m n)) 2) M)) (cos (- (/ (* K (+ m n)) 2) M))) (cos (- (/ (* K (+ m n)) 2) M)))) |
| 6.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 5.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
4 calls. Slowest were:
| 87.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 83.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 80.0ms | (cos (- (/ (* K (+ m n)) 2) M)) |
| 53.0ms | (cbrt (* (* (cos (- (/ (* K (+ m n)) 2) M)) (cos (- (/ (* K (+ m n)) 2) M))) (cos (- (/ (* K (+ m n)) 2) M)))) |
24 calls. Slowest were:
| 211.0ms | (cbrt (* (+ (cos (+ (- (/ (* K (+ m n)) 2) M) (- (/ (* K (+ m n)) 2) M))) (cos (- (- (/ (* K (+ m n)) 2) M) (- (/ (* K (+ m n)) 2) M)))) (cos (- (/ (* K (+ m n)) 2) M)))) |
| 106.0ms | (cos (- (+ (* 1/2 (* m K)) (* 1/2 (* K n))) M)) |
| 88.0ms | (cos (- (+ (* 1/2 (* m K)) (* 1/2 (* K n))) M)) |
4 alts after pruning (3 fresh and 1 done)
Merged error: 0.8b
0% (0.2b remaining)
Error of 1.4b against oracle of 1.2b and baseline of 1.4b