


Bits error versus J



Bits error versus K



Bits error versus U
Results
if J < -8.337566087302848e-234 or 2.216732952222694e-301 < J Initial program 15.4
Initial simplification6.4
Taylor expanded around -inf 6.3
if -8.337566087302848e-234 < J < 2.216732952222694e-301Initial program 40.5
Initial simplification26.4
Taylor expanded around -inf 26.4
rmApplied div-inv26.6
Taylor expanded around inf 30.4
Simplified30.4
Final simplification8.0
herbie shell --seed 2018365 +o rules:numerics
(FPCore (J K U)
:name "Maksimov and Kolovsky, Equation (3)"
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))
Time bar (total: 24.5s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 9.1b
Found 4 expressions with local error:
| 9.0b | (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J))) |
| 0.1b | (* (cos (/ K 2)) (* -2 J)) |
| 0.1b | (/ (/ (/ U 2) J) (cos (/ K 2))) |
| 0.0b | (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) |
4 calls. Slowest were:
| 22.0ms | (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J))) |
| 9.0ms | (/ (/ (/ U 2) J) (cos (/ K 2))) |
| 9.0ms | (* (cos (/ K 2)) (* -2 J)) |
4 calls. Slowest were:
| 300.0ms | (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J))) |
| 189.0ms | (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) |
| 79.0ms | (/ (/ (/ U 2) J) (cos (/ K 2))) |
| 46.0ms | (* (cos (/ K 2)) (* -2 J)) |
59 calls. Slowest were:
| 582.0ms | (/ (* (* (/ (/ U 2) J) (/ (/ U 2) J)) (/ (/ U 2) J)) (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2)))) |
| 205.0ms | (+ (* 1/16 (/ (* (pow K 2) U) J)) (* 1/2 (/ U J))) |
| 160.0ms | (* (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))) (* (* (* -2 J) (* -2 J)) (* -2 J))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 5.0b
Found 4 expressions with local error:
| 9.0b | (* (hypot 1 (* 1/2 (/ U (* (cos (* 1/2 K)) J)))) (* (cos (/ K 2)) (* -2 J))) |
| 0.1b | (* (cos (/ K 2)) (* -2 J)) |
| 0.1b | (* (cos (* 1/2 K)) J) |
| 0.1b | (/ U (* (cos (* 1/2 K)) J)) |
4 calls. Slowest were:
| 10.0ms | (* (hypot 1 (* 1/2 (/ U (* (cos (* 1/2 K)) J)))) (* (cos (/ K 2)) (* -2 J))) |
| 7.0ms | (* (cos (/ K 2)) (* -2 J)) |
| 4.0ms | (* (cos (* 1/2 K)) J) |
4 calls. Slowest were:
| 283.0ms | (* (hypot 1 (* 1/2 (/ U (* (cos (* 1/2 K)) J)))) (* (cos (/ K 2)) (* -2 J))) |
| 62.0ms | (/ U (* (cos (* 1/2 K)) J)) |
| 50.0ms | (* (cos (/ K 2)) (* -2 J)) |
| 41.0ms | (* (cos (* 1/2 K)) J) |
28 calls. Slowest were:
| 202.0ms | (* (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))) (* (* (* -2 J) (* -2 J)) (* -2 J))) |
| 191.0ms | (+ (* 1/8 (/ (* (pow K 2) U) J)) (/ U J)) |
| 156.0ms | (+ (log (hypot 1 (* 1/2 (/ U (* (cos (* 1/2 K)) J))))) (+ (log (cos (/ K 2))) (log (* -2 J)))) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 5.0b
Found 4 expressions with local error:
| 9.0b | (* (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J))))) (* (cos (/ K 2)) (* -2 J))) |
| 0.2b | (* U (/ 1 (* (cos (* 1/2 K)) J))) |
| 0.1b | (* (cos (/ K 2)) (* -2 J)) |
| 0.1b | (/ 1 (* (cos (* 1/2 K)) J)) |
4 calls. Slowest were:
| 21.0ms | (* (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J))))) (* (cos (/ K 2)) (* -2 J))) |
| 9.0ms | (* (cos (/ K 2)) (* -2 J)) |
| 7.0ms | (/ 1 (* (cos (* 1/2 K)) J)) |
4 calls. Slowest were:
| 266.0ms | (* (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J))))) (* (cos (/ K 2)) (* -2 J))) |
| 51.0ms | (* U (/ 1 (* (cos (* 1/2 K)) J))) |
| 49.0ms | (* (cos (/ K 2)) (* -2 J)) |
| 32.0ms | (/ 1 (* (cos (* 1/2 K)) J)) |
33 calls. Slowest were:
| 662.0ms | (sqrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) |
| 334.0ms | (* (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J))))) (* (cos (/ K 2)) (* -2 J))) |
| 310.0ms | (* (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J))))) (* (cos (/ K 2)) (* -2 J))) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 5.0b
Found 4 expressions with local error:
| 9.2b | (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) |
| 9.2b | (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) |
| 9.2b | (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) |
| 3.3b | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
4 calls. Slowest were:
| 29.0ms | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
| 1.0ms | (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) |
| 1.0ms | (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) |
4 calls. Slowest were:
| 312.0ms | (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) |
| 302.0ms | (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) |
| 285.0ms | (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) |
| 247.0ms | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
41 calls. Slowest were:
| 402.0ms | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
| 368.0ms | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
| 307.0ms | (* (* (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2))))) (cbrt (hypot 1 (/ (* 1/2 (/ U J)) (cos (* K 1/2)))))) (* (cbrt (hypot 1 (* 1/2 (* U (/ 1 (* (cos (* 1/2 K)) J)))))) (* (cos (/ K 2)) (* -2 J)))) |
10 alts after pruning (8 fresh and 2 done)
Merged error: 5.0b
-6.9% (4.2b remaining)
Error of 8.0b against oracle of 3.7b and baseline of 7.7b