


Bits error versus x
Results
Initial program 0.3
rmApplied div-sub0.4
rmApplied tan-quot0.4
Applied associate-*r/0.4
rmApplied frac-sub0.4
Simplified0.5
Final simplification0.5
herbie shell --seed 2019002
(FPCore (x)
:name "Trigonometry B"
(/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))))
Time bar (total: 25.8s)Debug log
1 calls. Slowest were:
| 64.0ms | (/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.3b
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))) (+ 1 (* (tan x) (tan x)))) |
| 0.1b | (- 1 (* (tan x) (tan x))) |
4 calls. Slowest were:
| 11.0ms | (/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))) |
| 9.0ms | (* (tan x) (tan x)) |
| 7.0ms | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 167.0ms | (* (tan x) (tan x)) |
| 75.0ms | (/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))) |
| 53.0ms | (* (tan x) (tan x)) |
| 41.0ms | (- 1 (* (tan x) (tan x))) |
72 calls. Slowest were:
| 500.0ms | (/ (* (* (- 1 (* (tan x) (tan x))) (- 1 (* (tan x) (tan x)))) (- 1 (* (tan x) (tan x)))) (* (* (+ 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))) (+ 1 (* (tan x) (tan x))))) |
| 248.0ms | (/ (- 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (+ (/ (pow (sin x) 2) (pow (cos x) 2)) 1)) |
| 218.0ms | (+ (* 1 1) (- (* (* (tan x) (tan x)) (* (tan x) (tan x))) (* 1 (* (tan x) (tan x))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.3b | (- (/ 1 (+ 1 (* (tan x) (tan x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 6.0ms | (- (/ 1 (+ 1 (* (tan x) (tan x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 4.0ms | (* (tan x) (tan x)) |
| 4.0ms | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 97.0ms | (- (/ 1 (+ 1 (* (tan x) (tan x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 41.0ms | (* (tan x) (tan x)) |
| 36.0ms | (* (tan x) (tan x)) |
| 28.0ms | (* (tan x) (tan x)) |
76 calls. Slowest were:
| 364.0ms | (- (* 1 (+ 1 (* (tan x) (tan x)))) (* (+ 1 (* (tan x) (tan x))) (* (tan x) (tan x)))) |
| 251.0ms | (+ (* 1 1) (- (* (* (tan x) (tan x)) (* (tan x) (tan x))) (* 1 (* (tan x) (tan x))))) |
| 155.0ms | (- (/ 1 (+ (/ (pow (sin x) 2) (pow (cos x) 2)) 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 | (- (/ 1 (+ 1 (/ (* (tan x) (sin x)) (cos x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 0.3b | (* (tan x) (tan x)) |
| 0.3b | (* (tan x) (tan x)) |
| 0.1b | (/ 1 (+ 1 (/ (* (tan x) (sin x)) (cos x)))) |
4 calls. Slowest were:
| 12.0ms | (- (/ 1 (+ 1 (/ (* (tan x) (sin x)) (cos x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 7.0ms | (* (tan x) (tan x)) |
| 7.0ms | (* (tan x) (tan x)) |
4 calls. Slowest were:
| 175.0ms | (- (/ 1 (+ 1 (/ (* (tan x) (sin x)) (cos x)))) (/ (* (tan x) (tan x)) (+ 1 (* (tan x) (tan x))))) |
| 78.0ms | (/ 1 (+ 1 (/ (* (tan x) (sin x)) (cos x)))) |
| 45.0ms | (* (tan x) (tan x)) |
| 45.0ms | (* (tan x) (tan x)) |
57 calls. Slowest were:
| 570.0ms | (- (* 1 (+ 1 (* (tan x) (tan x)))) (* (+ 1 (/ (* (tan x) (sin x)) (cos x))) (* (tan x) (tan x)))) |
| 194.0ms | (+ (* 1 1) (- (* (/ (* (tan x) (sin x)) (cos x)) (/ (* (tan x) (sin x)) (cos x))) (* 1 (/ (* (tan x) (sin x)) (cos x))))) |
| 176.0ms | (* (+ 1 (/ (* (tan x) (sin x)) (cos x))) (+ 1 (* (tan x) (tan x)))) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.3b | (pow (tan x) 3) |
| 0.3b | (* (tan x) (tan x)) |
| 0.2b | (* (+ 1 (/ (* (tan x) (sin x)) (cos x))) (+ 1 (* (tan x) (tan x)))) |
| 0.2b | (* (/ (sin x) (cos x)) (pow (tan x) 3)) |
4 calls. Slowest were:
| 11.0ms | (* (tan x) (tan x)) |
| 9.0ms | (* (+ 1 (/ (* (tan x) (sin x)) (cos x))) (+ 1 (* (tan x) (tan x)))) |
| 7.0ms | (* (/ (sin x) (cos x)) (pow (tan x) 3)) |
4 calls. Slowest were:
| 113.0ms | (* (/ (sin x) (cos x)) (pow (tan x) 3)) |
| 109.0ms | (* (+ 1 (/ (* (tan x) (sin x)) (cos x))) (+ 1 (* (tan x) (tan x)))) |
| 42.0ms | (pow (tan x) 3) |
| 26.0ms | (* (tan x) (tan x)) |
94 calls. Slowest were:
| 708.0ms | (* (+ (pow 1 3) (pow (/ (* (tan x) (sin x)) (cos x)) 3)) (+ (pow 1 3) (pow (* (tan x) (tan x)) 3))) |
| 580.0ms | (* (+ (pow 1 3) (pow (/ (* (tan x) (sin x)) (cos x)) 3)) (+ 1 (* (tan x) (tan x)))) |
| 540.0ms | (* (- 1 (/ (* (tan x) (sin x)) (cos x))) (+ (* 1 1) (- (* (* (tan x) (tan x)) (* (tan x) (tan x))) (* 1 (* (tan x) (tan x)))))) |
12 alts after pruning (11 fresh and 1 done)
Merged error: 0.0b
0% (0.4b remaining)
Error of 0.5b against oracle of 0.1b and baseline of 0.5b