


Bits error versus kx



Bits error versus ky



Bits error versus th
Results
if (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) < 0.9999953171152953Initial program 14.1
rmApplied clear-num14.1
Taylor expanded around inf 14.1
if 0.9999953171152953 < (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) Initial program 9.1
rmApplied clear-num9.1
Taylor expanded around inf 9.1
Taylor expanded around 0 5.2
Final simplification12.4
herbie shell --seed 2019010
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))
Time bar (total: 27.8s)Debug log
| 14.0ms | (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 14.6b
Found 4 expressions with local error:
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 0.3b | (pow (sin kx) 2) |
| 0.2b | (pow (sin ky) 2) |
| 0.2b | (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) |
| 44× | *-un-lft-identity |
| 25× | sqrt-prod |
| 25× | add-sqr-sqrt |
| 24× | add-cube-cbrt |
| 24× | times-frac |
| 16× | unpow-prod-down |
| 10× | distribute-lft-out |
| 8× | add-exp-log |
| 8× | associate-/r* |
| 6× | add-cbrt-cube |
| 6× | pow1 |
| 4× | add-log-exp |
| 4× | sqrt-div |
| 3× | associate-/l* |
| 2× | unpow2 |
| 2× | flip-+ |
| 2× | associate-/r/ |
| 2× | pow-exp |
| 2× | flip3-+ |
| 2× | pow-pow |
| 2× | pow-to-exp |
| 1× | div-inv |
| 1× | div-exp |
| 1× | pow1/2 |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | rem-sqrt-square |
| 1× | cbrt-undiv |
| 10.0ms | (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) |
| 10.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 1.0ms | (pow (sin kx) 2) |
| 1.0ms | (pow (sin ky) 2) |
| 122.0ms | (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) |
| 108.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 16.0ms | (pow (sin kx) 2) |
| 15.0ms | (pow (sin ky) 2) |
| 196.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 190.0ms | (sqrt (+ (* (pow (sin kx) 2) (pow (sin kx) 2)) (- (* (pow (sin ky) 2) (pow (sin ky) 2)) (* (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 171.0ms | (/ (* (* (sin ky) (sin ky)) (sin ky)) (* (* (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) |
| 160.0ms | (sqrt (- (* (pow (sin kx) 2) (pow (sin kx) 2)) (* (pow (sin ky) 2) (pow (sin ky) 2)))) |
| 53.0ms | (- (+ (* 2/45 (pow ky 6)) (pow ky 2)) (* 1/3 (pow ky 4))) |
17 alts after pruning (17 fresh and 0 done)
Merged error: 12.7b
Found 4 expressions with local error:
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 0.3b | (pow (sin kx) 2) |
| 0.2b | (pow (sin ky) 2) |
| 0.2b | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 38× | *-un-lft-identity |
| 28× | associate-/r* |
| 24× | times-frac |
| 23× | add-sqr-sqrt |
| 22× | add-cube-cbrt |
| 20× | sqrt-prod |
| 14× | unpow-prod-down |
| 9× | add-exp-log |
| 8× | distribute-lft-out |
| 7× | pow1 |
| 4× | add-log-exp |
| 4× | add-cbrt-cube |
| 2× | unpow2 |
| 2× | div-inv |
| 2× | pow-exp |
| 2× | sqrt-div |
| 2× | pow-pow |
| 2× | rec-exp |
| 2× | pow-to-exp |
| 1× | inv-pow |
| 1× | pow-flip |
| 1× | flip-+ |
| 1× | associate-/r/ |
| 1× | div-exp |
| 1× | pow1/2 |
| 1× | flip3-+ |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | rem-sqrt-square |
| 14.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 6.0ms | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 2.0ms | (pow (sin ky) 2) |
| 2.0ms | (pow (sin kx) 2) |
| 164.0ms | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 100.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 16.0ms | (pow (sin kx) 2) |
| 15.0ms | (pow (sin ky) 2) |
| 195.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 150.0ms | (sqrt (- (* (pow (sin kx) 2) (pow (sin kx) 2)) (* (pow (sin ky) 2) (pow (sin ky) 2)))) |
| 61.0ms | (- (+ (* 2/45 (pow ky 6)) (pow ky 2)) (* 1/3 (pow ky 4))) |
| 58.0ms | (- (+ (pow kx 2) (* 2/45 (pow kx 6))) (* 1/3 (pow kx 4))) |
| 51.0ms | (sqrt (+ (pow (pow (sin kx) 2) 3) (pow (pow (sin ky) 2) 3))) |
17 alts after pruning (17 fresh and 0 done)
Merged error: 12.7b
Found 4 expressions with local error:
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 0.3b | (pow (sin kx) 2) |
| 0.2b | (pow (sin ky) 2) |
| 0.2b | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 38× | *-un-lft-identity |
| 28× | associate-/r* |
| 24× | times-frac |
| 23× | add-sqr-sqrt |
| 22× | add-cube-cbrt |
| 20× | sqrt-prod |
| 14× | unpow-prod-down |
| 9× | add-exp-log |
| 8× | distribute-lft-out |
| 7× | pow1 |
| 4× | add-log-exp |
| 4× | add-cbrt-cube |
| 2× | unpow2 |
| 2× | div-inv |
| 2× | pow-exp |
| 2× | sqrt-div |
| 2× | pow-pow |
| 2× | rec-exp |
| 2× | pow-to-exp |
| 1× | inv-pow |
| 1× | pow-flip |
| 1× | flip-+ |
| 1× | associate-/r/ |
| 1× | div-exp |
| 1× | pow1/2 |
| 1× | flip3-+ |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | rem-sqrt-square |
| 15.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 10.0ms | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 4.0ms | (pow (sin ky) 2) |
| 2.0ms | (pow (sin kx) 2) |
| 131.0ms | (/ 1 (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 79.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 24.0ms | (pow (sin kx) 2) |
| 17.0ms | (pow (sin ky) 2) |
| 197.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 121.0ms | (sqrt (- (* (pow (sin kx) 2) (pow (sin kx) 2)) (* (pow (sin ky) 2) (pow (sin ky) 2)))) |
| 59.0ms | (- (+ (pow kx 2) (* 2/45 (pow kx 6))) (* 1/3 (pow kx 4))) |
| 59.0ms | (- (+ (* 2/45 (pow ky 6)) (pow ky 2)) (* 1/3 (pow ky 4))) |
| 43.0ms | (sqrt (+ (pow (pow (sin kx) 2) 3) (pow (pow (sin ky) 2) 3))) |
17 alts after pruning (16 fresh and 1 done)
Merged error: 12.7b
Found 4 expressions with local error:
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 3.6b | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 0.3b | (cbrt (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 46× | *-un-lft-identity |
| 30× | sqrt-prod |
| 28× | cbrt-prod |
| 25× | add-sqr-sqrt |
| 24× | times-frac |
| 22× | add-cube-cbrt |
| 12× | distribute-lft-out |
| 12× | unpow-prod-down |
| 6× | sqrt-div |
| 4× | add-log-exp |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | pow1 |
| 3× | flip-+ |
| 3× | pow1/2 |
| 3× | flip3-+ |
| 3× | rem-sqrt-square |
| 1× | div-inv |
| 1× | pow1/3 |
| 1× | cbrt-div |
| 15.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 15.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 14.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 9.0ms | (cbrt (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 234.0ms | (cbrt (/ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin ky))) |
| 104.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 90.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 88.0ms | (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) |
| 193.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 175.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 159.0ms | (- (+ (* 1/12 (* (pow kx 2) ky)) ky) (* 1/6 (pow ky 3))) |
| 138.0ms | (sqrt (- (* (pow (sin kx) 2) (pow (sin kx) 2)) (* (pow (sin ky) 2) (pow (sin ky) 2)))) |
| 122.0ms | (sqrt (- (* (pow (sin kx) 2) (pow (sin kx) 2)) (* (pow (sin ky) 2) (pow (sin ky) 2)))) |
20 alts after pruning (19 fresh and 1 done)
Merged error: 12.7b
64.7% (0.4b remaining)
Error of 12.4b against oracle of 11.9b and baseline of 13.1b