


Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
Results
if n < -3.0609677896932e-312Initial program 33.3
rmApplied associate-/l*30.8
rmApplied unpow230.8
Applied associate-*r*29.9
rmApplied associate-*l*29.5
rmApplied associate-*l*29.2
if -3.0609677896932e-312 < n Initial program 33.3
rmApplied associate-/l*30.6
rmApplied unpow230.6
Applied associate-*r*29.7
rmApplied associate-*l*29.0
rmApplied sqrt-prod21.9
Final simplification25.5
herbie shell --seed 2019007 +o rules:numerics
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))
Time bar (total: 1.5m)Debug log
1 calls. Slowest were:
| 115.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 33.1b
Found 4 expressions with local error:
| 20.7b | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 9.3b | (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 8.9b | (/ (* l l) Om) |
| 6.9b | (* (* n (pow (/ l Om) 2)) (- U U*)) |
4 calls. Slowest were:
| 31.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 21.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 6.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
4 calls. Slowest were:
| 1.3s | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 376.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 77.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 17.0ms | (/ (* l l) Om) |
58 calls. Slowest were:
| 601.0ms | (* (fma (- (- U U*)) (* n (pow (/ l Om) 2)) (* (- U U*) (* n (pow (/ l Om) 2)))) (* (* 2 n) U)) |
| 597.0ms | (* (fma (- (- U U*)) (* n (pow (/ l Om) 2)) (* (- U U*) (* n (pow (/ l Om) 2)))) (* (* 2 n) U)) |
| 537.0ms | (* (fma (- (- U U*)) (* n (pow (/ l Om) 2)) (* (- U U*) (* n (pow (/ l Om) 2)))) (* (* 2 n) U)) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 22.4b
Found 4 expressions with local error:
| 20.7b | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 9.3b | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 6.9b | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 4.6b | (* n (pow (/ l Om) 2)) |
4 calls. Slowest were:
| 33.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 12.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 6.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
4 calls. Slowest were:
| 1.1s | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 281.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 81.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 41.0ms | (* n (pow (/ l Om) 2)) |
66 calls. Slowest were:
| 629.0ms | (* (fma (- (- U U*)) (* n (pow (/ l Om) 2)) (* (- U U*) (* n (pow (/ l Om) 2)))) (* (* 2 n) U)) |
| 549.0ms | (* (fma (- (- U U*)) (* n (pow (/ l Om) 2)) (* (- U U*) (* n (pow (/ l Om) 2)))) (* (* 2 n) U)) |
| 448.0ms | (+ (log (* (* 2 n) U)) (log (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 21.0b
Found 4 expressions with local error:
| 20.7b | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 9.3b | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 6.9b | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 5.2b | (* n (/ l Om)) |
4 calls. Slowest were:
| 32.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 23.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 16.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
4 calls. Slowest were:
| 1.3s | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 317.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 116.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 21.0ms | (* n (/ l Om)) |
117 calls. Slowest were:
| 661.0ms | (sqrt (* (* (* 2 n) U) (- (* (- (pow t 3) (pow (* 2 (/ l (/ Om l))) 3)) Om) (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) (* (* (* n (/ l Om)) l) (- U U*)))))) |
| 598.0ms | (* (+ t (* 2 (/ l (/ Om l)))) (* Om (+ (* U U) (+ (* U* U*) (* U U*))))) |
| 543.0ms | (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) Om) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 19.9b
Found 4 expressions with local error:
| 20.7b | (sqrt (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))))) |
| 6.9b | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 6.3b | (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 5.2b | (* n (/ l Om)) |
4 calls. Slowest were:
| 41.0ms | (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 36.0ms | (sqrt (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))))) |
| 10.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
4 calls. Slowest were:
| 1.2s | (sqrt (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))))) |
| 353.0ms | (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 94.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 21.0ms | (* n (/ l Om)) |
128 calls. Slowest were:
| 457.0ms | (* (* (* n (/ l Om)) l) (- U U*)) |
| 419.0ms | (sqrt (* (* 2 n) (* U (- (* (- (pow t 3) (pow (* 2 (/ l (/ Om l))) 3)) (* Om (+ (* U U) (+ (* U* U*) (* U U*))))) (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) (* (* (* n l) (/ l Om)) (- (pow U 3) (pow U* 3)))))))) |
| 416.0ms | (sqrt (* (* 2 n) (* U (- (* (- (pow t 3) (pow (* 2 (/ l (/ Om l))) 3)) (* (* Om Om) (+ U U*))) (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) (* (* (* n l) l) (- (* U U) (* U* U*)))))))) |
13 alts after pruning (13 fresh and 0 done)
Merged error: 15.4b
28.9% (8.6b remaining)
Error of 25.5b against oracle of 16.9b and baseline of 29.0b