


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
(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.3m)Debug log
1 calls. Slowest were:
| 77.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:
| 36.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 10.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 10.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* 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*))))) |
| 417.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 117.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 17.0ms | (/ (* l l) Om) |
52 calls. Slowest were:
| 439.0ms | (sqrt (* (* (* 2 n) U) (- (* (- (pow t 3) (pow (* 2 (/ (* l l) Om)) 3)) (+ (* U U) (+ (* U* U*) (* U U*)))) (* (+ (* t t) (+ (* (* 2 (/ (* l l) Om)) (* 2 (/ (* l l) Om))) (* t (* 2 (/ (* l l) Om))))) (* (* n (pow (/ l Om) 2)) (- (pow U 3) (pow U* 3))))))) |
| 377.0ms | (* (+ t (* 2 (/ (* l l) Om))) (+ U U*)) |
| 347.0ms | (sqrt (* (* (* 2 n) U) (- (* (- (pow t 3) (pow (* 2 (/ (* l l) Om)) 3)) (+ U U*)) (* (+ (* t t) (+ (* (* 2 (/ (* l l) Om)) (* 2 (/ (* l l) Om))) (* t (* 2 (/ (* l l) Om))))) (* (* n (pow (/ l Om) 2)) (- (* U U) (* U* U*))))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 22.2b
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:
| 24.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 12.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 8.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
4 calls. Slowest were:
| 1.2s | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 384.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*)))) |
| 110.0ms | (* (* n (pow (/ l Om) 2)) (- U U*)) |
| 28.0ms | (* n (pow (/ l Om) 2)) |
60 calls. Slowest were:
| 717.0ms | (+ (log (* (* 2 n) U)) (log (- (- t (* 2 (/ l (/ Om l)))) (* (* n (pow (/ l Om) 2)) (- U U*))))) |
| 355.0ms | (sqrt (* (* (* 2 n) U) (- (* (- (pow t 3) (pow (* 2 (/ l (/ Om l))) 3)) (+ (* U U) (+ (* U* U*) (* U U*)))) (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) (* (* n (pow (/ l Om) 2)) (- (pow U 3) (pow U* 3))))))) |
| 334.0ms | (* (+ t (* 2 (/ l (/ Om l)))) (+ U U*)) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 20.7b
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:
| 50.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 23.0ms | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 19.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
4 calls. Slowest were:
| 1.1s | (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 283.0ms | (* (* (* 2 n) U) (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 69.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 13.0ms | (* n (/ l Om)) |
111 calls. Slowest were:
| 478.0ms | (sqrt (* (* (* 2 n) U) (- (* (- (pow t 3) (pow (* 2 (/ l (/ Om l))) 3)) (* (* Om 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) (- (pow U 3) (pow U* 3))))))) |
| 468.0ms | (* (* (* 2 n) U) (- (* (* (* n (/ l Om)) (/ l Om)) (- U U*)))) |
| 409.0ms | (* (+ t (* 2 (/ l (/ Om l)))) (* Om Om)) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 20.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*)))))) |
| 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:
| 68.0ms | (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 35.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*)))))) |
| 338.0ms | (* (* 2 n) (* U (- (- t (* 2 (/ l (/ Om l)))) (* (* (* n (/ l Om)) (/ l Om)) (- U U*))))) |
| 81.0ms | (* (* (* n (/ l Om)) (/ l Om)) (- U U*)) |
| 22.0ms | (* n (/ l Om)) |
116 calls. Slowest were:
| 545.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*))))))) |
| 474.0ms | (* (+ (* t t) (+ (* (* 2 (/ l (/ Om l))) (* 2 (/ l (/ Om l)))) (* t (* 2 (/ l (/ Om l)))))) (* Om Om)) |
| 438.0ms | (* (+ t (* 2 (/ l (/ Om l)))) (* Om (+ (* U U) (+ (* U* U*) (* U U*))))) |
13 alts after pruning (13 fresh and 0 done)
Merged error: 15.4b
28.3% (8.8b remaining)
Error of 25.5b against oracle of 16.7b and baseline of 29.0b