


Bits error versus l



Bits error versus Om



Bits error versus kx



Bits error versus ky
Results
Initial program 1.7
Initial simplification1.7
rmApplied associate-*r/1.4
Final simplification1.4
herbie shell --seed 2018360
(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: 31.7s)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 1.6b
Found 4 expressions with local error:
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 4.1b | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) |
| 0.5b | (/ 4 (/ Om l)) |
| 0.4b | (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1))) |
4 calls. Slowest were:
| 26.0ms | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) |
| 20.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 9.0ms | (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1))) |
4 calls. Slowest were:
| 335.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 259.0ms | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) |
| 244.0ms | (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1))) |
| 10.0ms | (/ 4 (/ Om l)) |
71 calls. Slowest were:
| 532.0ms | (* (- (* (* (sin ky) (sin ky)) (* (sin ky) (sin ky))) (* (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (/ (/ 4 (/ Om l)) (/ Om l))) |
| 408.0ms | (+ (log (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (- (log (/ 4 (/ Om l))) (log (/ Om l)))) |
| 359.0ms | (* (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (/ (* (* (/ 4 (/ Om l)) (/ 4 (/ Om l))) (/ 4 (/ Om l))) (* (* (/ Om l) (/ Om l)) (/ Om l)))) |
3 alts after pruning (3 fresh and 0 done)
Merged error: 0.3b
Found 4 expressions with local error:
| 7.5b | (sqrt (+ (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) 1)) |
| 3.2b | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) |
| 0.5b | (/ 4 (/ Om l)) |
| 0.5b | (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) |
4 calls. Slowest were:
| 29.0ms | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) |
| 20.0ms | (sqrt (+ (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) 1)) |
| 16.0ms | (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) |
4 calls. Slowest were:
| 281.0ms | (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) |
| 281.0ms | (sqrt (+ (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) 1)) |
| 241.0ms | (/ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ 4 (/ Om l))) (/ Om l)) |
| 15.0ms | (/ 4 (/ Om l)) |
65 calls. Slowest were:
| 699.0ms | (* (- (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ Om l)) |
| 432.0ms | (- (+ (log (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (log (/ 4 (/ Om l)))) (log (/ Om l))) |
| 390.0ms | (* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) 4) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.3b
Found 4 expressions with local error:
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.2b | (cbrt (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)))) |
4 calls. Slowest were:
| 24.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 21.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 20.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
4 calls. Slowest were:
| 330.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 307.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 290.0ms | (cbrt (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)))) |
| 271.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
37 calls. Slowest were:
| 190.0ms | (cbrt (* (cbrt (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)))) (cbrt (/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)))))) |
| 188.0ms | (sqrt (* (cbrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) (cbrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)))) |
| 182.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.3b
Found 4 expressions with local error:
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 7.5b | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
4 calls. Slowest were:
| 18.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 14.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 13.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
4 calls. Slowest were:
| 305.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 290.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 289.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 260.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
36 calls. Slowest were:
| 167.0ms | (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1)) |
| 166.0ms | (sqrt (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) 1))) |
| 153.0ms | (sqrt (- (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l))) (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ (/ 4 (/ Om l)) (/ Om l)))) (* 1 1))) |
3 alts after pruning (1 fresh and 2 done)
Merged error: 0.3b
0% (0.7b remaining)
Error of 1.4b against oracle of 0.7b and baseline of 1.4b