


Bits error versus l



Bits error versus Om



Bits error versus kx



Bits error versus ky
if (pow (/ (* 2 l) Om) 2) < 7.382935019665496e+203Initial program 1.1
rmApplied add-sqr-sqrt1.1
Applied sqrt-prod1.1
Applied associate-/r*1.1
if 7.382935019665496e+203 < (pow (/ (* 2 l) Om) 2) Initial program 2.7
Taylor expanded around 0 23.2
Simplified1.9
Final simplification1.4
herbie shell --seed 2019004 +o rules:numerics
(FPCore (l Om kx ky)
:name "Toniolo and Linder, Equation (3a)"
(sqrt (* (/ 1 2) (+ 1 (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
Time bar (total: 32.8s)Debug log
1 calls. Slowest were:
| 613.0ms | (sqrt (* (/ 1 2) (+ 1 (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 2.3b
Found 4 expressions with local error:
| 10.8b | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 2.9b | (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 0.5b | (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 0.3b | (pow (sin kx) 2) |
4 calls. Slowest were:
| 13.0ms | (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 2.0ms | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 1.0ms | (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
4 calls. Slowest were:
| 342.0ms | (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 308.0ms | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 166.0ms | (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 21.0ms | (pow (sin kx) 2) |
53 calls. Slowest were:
| 597.0ms | (* (pow (sin ky) 2) (pow (/ (* 2 l) Om) 2)) |
| 575.0ms | (* (pow (/ (* 2 l) Om) 2) (pow (sin ky) 2)) |
| 414.0ms | (sqrt (- 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
3 alts after pruning (3 fresh and 0 done)
Merged error: 0.9b
Found 4 expressions with local error:
| 10.8b | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 10.8b | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 5.0b | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 5.0b | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
4 calls. Slowest were:
| 2.0ms | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 1.0ms | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 1.0ms | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
4 calls. Slowest were:
| 419.0ms | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 342.0ms | (sqrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) |
| 248.0ms | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 233.0ms | (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
44 calls. Slowest were:
| 304.0ms | (sqrt (sqrt (* (cbrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (cbrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))) |
| 280.0ms | (sqrt (* (cbrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (cbrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) |
| 279.0ms | (sqrt (* (cbrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (cbrt (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.9b
Found 4 expressions with local error:
| 12.8b | (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om)))) |
| 11.2b | (sqrt (+ 1 (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om)))))) |
| 0.8b | (/ 1 (sqrt (+ 1 (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om))))))) |
| 0.3b | (* (/ ky Om) (/ ky Om)) |
4 calls. Slowest were:
| 7.0ms | (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om)))) |
| 3.0ms | (* (/ ky Om) (/ ky Om)) |
| 1.0ms | (/ 1 (sqrt (+ 1 (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om))))))) |
4 calls. Slowest were:
| 112.0ms | (sqrt (+ 1 (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om)))))) |
| 88.0ms | (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om)))) |
| 76.0ms | (/ 1 (sqrt (+ 1 (* (* (* l l) 4) (fma (/ kx Om) (/ kx Om) (* (/ ky Om) (/ ky Om))))))) |
| 24.0ms | (* (/ ky Om) (/ ky Om)) |
52 calls. Slowest were:
| 924.0ms | (* (* (* (/ ky Om) (/ ky Om)) (/ ky Om)) (* (* (/ ky Om) (/ ky Om)) (/ ky Om))) |
| 665.0ms | (+ (* 4 (/ (* (pow kx 2) (pow l 2)) (pow Om 2))) (* 4 (/ (* (pow ky 2) (pow l 2)) (pow Om 2)))) |
| 527.0ms | (* (* (/ ky Om) (/ ky Om)) (* (* l l) 4)) |
3 alts after pruning (1 fresh and 2 done)
Merged error: 0.9b
Found 0 expressions with local error:
0 calls. Slowest were:
0 calls. Slowest were:
0 calls. Slowest were:
3 alts after pruning (0 fresh and 3 done)
Merged error: 0.9b
31.5% (0.6b remaining)
Error of 1.4b against oracle of 0.7b and baseline of 1.7b