


Bits error versus x
Initial program 0.3
Simplified0.3
rmApplied tan-quot0.4
Applied associate-*r/0.4
rmApplied clear-num0.4
Final simplification0.4
herbie shell --seed 2019007 +o rules:numerics
(FPCore (x)
:name "Trigonometry B"
(/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))))
Time bar (total: 20.9s)Debug log
1 calls. Slowest were:
| 94.0ms | (/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.3b
Found 4 expressions with local error:
| 0.3b | (* (tan x) (tan x)) |
| 0.2b | (/ (- 1 (* (tan x) (tan x))) (fma (tan x) (tan x) 1)) |
| 0.2b | (- 1 (* (tan x) (tan x))) |
| 0.1b | (fma (tan x) (tan x) 1) |
4 calls. Slowest were:
| 10.0ms | (* (tan x) (tan x)) |
| 7.0ms | (/ (- 1 (* (tan x) (tan x))) (fma (tan x) (tan x) 1)) |
| 2.0ms | (- 1 (* (tan x) (tan x))) |
4 calls. Slowest were:
| 91.0ms | (/ (- 1 (* (tan x) (tan x))) (fma (tan x) (tan x) 1)) |
| 82.0ms | (* (tan x) (tan x)) |
| 34.0ms | (- 1 (* (tan x) (tan x))) |
| 32.0ms | (fma (tan x) (tan x) 1) |
55 calls. Slowest were:
| 236.0ms | (/ (* (* (- 1 (* (tan x) (tan x))) (- 1 (* (tan x) (tan x)))) (- 1 (* (tan x) (tan x)))) (* (* (fma (tan x) (tan x) 1) (fma (tan x) (tan x) 1)) (fma (tan x) (tan x) 1))) |
| 225.0ms | (/ (- 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (+ (/ (pow (sin x) 2) (pow (cos x) 2)) 1)) |
| 154.0ms | (/ (- 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (+ (/ (pow (sin x) 2) (pow (cos x) 2)) 1)) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
| 0.2b | (/ (- 1 (* (tan x) (tan x))) (+ (* (tan x) (tan x)) 1)) |
| 0.2b | (- 1 (* (tan x) (tan x))) |
4 calls. Slowest were:
| 16.0ms | (/ (- 1 (* (tan x) (tan x))) (+ (* (tan x) (tan x)) 1)) |
| 8.0ms | (* (tan x) (tan x)) |
| 8.0ms | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 88.0ms | (/ (- 1 (* (tan x) (tan x))) (+ (* (tan x) (tan x)) 1)) |
| 30.0ms | (* (tan x) (tan x)) |
| 26.0ms | (* (tan x) (tan x)) |
| 24.0ms | (- 1 (* (tan x) (tan x))) |
72 calls. Slowest were:
| 588.0ms | (/ (* (* (- 1 (* (tan x) (tan x))) (- 1 (* (tan x) (tan x)))) (- 1 (* (tan x) (tan x)))) (* (* (+ (* (tan x) (tan x)) 1) (+ (* (tan x) (tan x)) 1)) (+ (* (tan x) (tan x)) 1))) |
| 335.0ms | (+ (* (* (tan x) (tan x)) (* (tan x) (tan x))) (- (* 1 1) (* (* (tan x) (tan x)) 1))) |
| 189.0ms | (/ (- 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (+ (/ (pow (sin x) 2) (pow (cos x) 2)) 1)) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.4b | (pow (* (tan x) (tan x)) 3) |
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 8.0ms | (* (tan x) (tan x)) |
| 8.0ms | (* (tan x) (tan x)) |
| 8.0ms | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 64.0ms | (pow (* (tan x) (tan x)) 3) |
| 40.0ms | (* (tan x) (tan x)) |
| 31.0ms | (* (tan x) (tan x)) |
| 26.0ms | (* (tan x) (tan x)) |
71 calls. Slowest were:
| 46.0ms | (pow (* (tan x) (sin x)) 3) |
| 34.0ms | (pow (* (sin x) (tan x)) 3) |
| 33.0ms | (* (* (* (tan x) (tan x)) (tan x)) (* (* (tan x) (tan x)) (tan x))) |
13 alts after pruning (13 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.2b | (/ (* (tan x) (sin x)) (cos x)) |
| 0.2b | (* (tan x) (sin x)) |
| 0.2b | (/ (- 1 (/ (* (tan x) (sin x)) (cos x))) (fma (tan x) (tan x) 1)) |
| 0.2b | (- 1 (/ (* (tan x) (sin x)) (cos x))) |
4 calls. Slowest were:
| 14.0ms | (/ (* (tan x) (sin x)) (cos x)) |
| 9.0ms | (/ (- 1 (/ (* (tan x) (sin x)) (cos x))) (fma (tan x) (tan x) 1)) |
| 8.0ms | (* (tan x) (sin x)) |
4 calls. Slowest were:
| 100.0ms | (/ (- 1 (/ (* (tan x) (sin x)) (cos x))) (fma (tan x) (tan x) 1)) |
| 81.0ms | (/ (* (tan x) (sin x)) (cos x)) |
| 63.0ms | (- 1 (/ (* (tan x) (sin x)) (cos x))) |
| 51.0ms | (* (tan x) (sin x)) |
64 calls. Slowest were:
| 553.0ms | (/ (* (* (* (tan x) (tan x)) (tan x)) (* (* (sin x) (sin x)) (sin x))) (* (* (cos x) (cos x)) (cos x))) |
| 496.0ms | (/ (* (* (* (tan x) (sin x)) (* (tan x) (sin x))) (* (tan x) (sin x))) (* (* (cos x) (cos x)) (cos x))) |
| 290.0ms | (/ (- 1 (/ (* (tan x) (sin x)) (cos x))) (fma (tan x) (tan x) 1)) |
13 alts after pruning (12 fresh and 1 done)
Merged error: 0.0b
0% (0.3b remaining)
Error of 0.4b against oracle of 0.1b and baseline of 0.4b