


Bits error versus re



Bits error versus im
Results
if re < -3.879896324034765e+144Initial program 59.0
Initial simplification59.0
rmApplied add-sqr-sqrt59.0
Applied pow1/259.0
Applied log-pow59.0
Applied times-frac59.0
rmApplied div-inv59.0
Taylor expanded around -inf 6.2
Simplified6.2
if -3.879896324034765e+144 < re < -9.888754662830056e-214 or 1.942710743904727e-125 < re < 4.1181592821076165e+123Initial program 17.0
Initial simplification17.0
rmApplied add-sqr-sqrt17.0
Applied pow1/217.0
Applied log-pow17.0
Applied times-frac17.0
rmApplied div-inv16.8
rmApplied add-sqr-sqrt16.8
Applied associate-*r*16.9
rmApplied associate-*l*16.8
if -9.888754662830056e-214 < re < -7.432754596401146e-269 or 4.670873727021844e-211 < re < 1.942710743904727e-125Initial program 26.9
Initial simplification26.9
rmApplied add-sqr-sqrt26.9
Applied pow1/226.9
Applied log-pow26.9
Applied times-frac26.8
rmApplied div-inv26.7
Taylor expanded around 0 36.4
if -7.432754596401146e-269 < re < 4.670873727021844e-211Initial program 30.7
Initial simplification30.7
rmApplied add-sqr-sqrt30.7
Applied pow1/230.7
Applied log-pow30.7
Applied times-frac30.6
rmApplied div-inv30.5
rmApplied add-sqr-sqrt30.5
Applied associate-*r*30.6
rmApplied associate-*r*30.6
if 4.1181592821076165e+123 < re Initial program 54.7
Initial simplification54.7
rmApplied add-sqr-sqrt54.7
Applied pow1/254.7
Applied log-pow54.7
Applied times-frac54.7
rmApplied div-inv54.7
Taylor expanded around inf 8.1
Simplified8.1
Final simplification17.7
herbie shell --seed 2018362
(FPCore (re im)
:name "math.log10 on complex, real part"
(/ (log (sqrt (+ (* re re) (* im im)))) (log 10)))
Time bar (total: 21.4s)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 29.8b
Found 3 expressions with local error:
| 28.3b | (sqrt (+ (* re re) (* im im))) |
| 0.6b | (/ (log (sqrt (+ (* re re) (* im im)))) (log 10)) |
| 0.0b | (+ (* re re) (* im im)) |
3 calls. Slowest were:
| 17.0ms | (/ (log (sqrt (+ (* re re) (* im im)))) (log 10)) |
| 6.0ms | (sqrt (+ (* re re) (* im im))) |
| 4.0ms | (+ (* re re) (* im im)) |
3 calls. Slowest were:
| 162.0ms | (/ (log (sqrt (+ (* re re) (* im im)))) (log 10)) |
| 47.0ms | (sqrt (+ (* re re) (* im im))) |
| 25.0ms | (+ (* re re) (* im im)) |
55 calls. Slowest were:
| 184.0ms | (/ (log (sqrt (- (* (* re re) (* re re)) (* (* im im) (* im im))))) (log 10)) |
| 162.0ms | (sqrt (- (* (* re re) (* re re)) (* (* im im) (* im im)))) |
| 144.0ms | (/ (* (* (log (sqrt (+ (* re re) (* im im)))) (log (sqrt (+ (* re re) (* im im))))) (log (sqrt (+ (* re re) (* im im))))) (* (* (log 10) (log 10)) (log 10))) |
13 alts after pruning (13 fresh and 0 done)
Merged error: 6.3b
Found 4 expressions with local error:
| 29.4b | (log (+ (* re re) (* im im))) |
| 0.5b | (/ (log (+ (* re re) (* im im))) (sqrt (log 10))) |
| 0.3b | (* (/ 1/2 (sqrt (log 10))) (/ (log (+ (* re re) (* im im))) (sqrt (log 10)))) |
| 0.0b | (+ (* re re) (* im im)) |
4 calls. Slowest were:
| 7.0ms | (/ (log (+ (* re re) (* im im))) (sqrt (log 10))) |
| 6.0ms | (* (/ 1/2 (sqrt (log 10))) (/ (log (+ (* re re) (* im im))) (sqrt (log 10)))) |
| 2.0ms | (+ (* re re) (* im im)) |
4 calls. Slowest were:
| 170.0ms | (/ (log (+ (* re re) (* im im))) (sqrt (log 10))) |
| 134.0ms | (* (/ 1/2 (sqrt (log 10))) (/ (log (+ (* re re) (* im im))) (sqrt (log 10)))) |
| 48.0ms | (log (+ (* re re) (* im im))) |
| 24.0ms | (+ (* re re) (* im im)) |
118 calls. Slowest were:
| 526.0ms | (* (* (* (/ 1/2 (sqrt (log 10))) (/ 1/2 (sqrt (log 10)))) (/ 1/2 (sqrt (log 10)))) (* (* (/ (log (+ (* re re) (* im im))) (sqrt (log 10))) (/ (log (+ (* re re) (* im im))) (sqrt (log 10)))) (/ (log (+ (* re re) (* im im))) (sqrt (log 10))))) |
| 164.0ms | (+ (log (/ 1/2 (sqrt (log 10)))) (- (log (log (+ (* re re) (* im im)))) (log (sqrt (log 10))))) |
| 148.0ms | (log (- (* (* re re) (* re re)) (* (* im im) (* im im)))) |
15 alts after pruning (15 fresh and 0 done)
Merged error: 6.1b
Found 4 expressions with local error:
| 29.4b | (log (+ (* re re) (* im im))) |
| 0.3b | (* (/ 1/2 (sqrt (log 10))) (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10))))) |
| 0.2b | (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10)))) |
| 0.0b | (+ (* re re) (* im im)) |
4 calls. Slowest were:
| 22.0ms | (* (/ 1/2 (sqrt (log 10))) (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10))))) |
| 10.0ms | (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10)))) |
| 4.0ms | (+ (* re re) (* im im)) |
4 calls. Slowest were:
| 177.0ms | (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10)))) |
| 167.0ms | (* (/ 1/2 (sqrt (log 10))) (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10))))) |
| 45.0ms | (log (+ (* re re) (* im im))) |
| 27.0ms | (+ (* re re) (* im im)) |
48 calls. Slowest were:
| 545.0ms | (+ (log (/ 1/2 (sqrt (log 10)))) (+ (log (log (+ (* re re) (* im im)))) (log (/ 1 (sqrt (log 10)))))) |
| 427.0ms | (+ (log (/ 1/2 (sqrt (log 10)))) (log (* (log (+ (* re re) (* im im))) (/ 1 (sqrt (log 10)))))) |
| 349.0ms | (* (* (* (log (+ (* re re) (* im im))) (log (+ (* re re) (* im im)))) (log (+ (* re re) (* im im)))) (* (* (/ 1 (sqrt (log 10))) (/ 1 (sqrt (log 10)))) (/ 1 (sqrt (log 10))))) |
13 alts after pruning (13 fresh and 0 done)
Merged error: 6.1b
Found 4 expressions with local error:
| 29.4b | (log (+ (* re re) (* im im))) |
| 0.3b | (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10))))) |
| 0.3b | (* (/ 1/2 (sqrt (log 10))) (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10)))))) |
| 0.3b | (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) |
4 calls. Slowest were:
| 51.0ms | (* (/ 1/2 (sqrt (log 10))) (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10)))))) |
| 25.0ms | (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10))))) |
| 5.0ms | (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) |
4 calls. Slowest were:
| 343.0ms | (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) |
| 237.0ms | (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10))))) |
| 123.0ms | (* (/ 1/2 (sqrt (log 10))) (* (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10)))))) |
| 40.0ms | (log (+ (* re re) (* im im))) |
71 calls. Slowest were:
| 373.0ms | (* (* (* (log (+ (* re re) (* im im))) (log (+ (* re re) (* im im)))) (log (+ (* re re) (* im im)))) (* (* (sqrt (/ 1 (sqrt (log 10)))) (sqrt (/ 1 (sqrt (log 10))))) (sqrt (/ 1 (sqrt (log 10)))))) |
| 335.0ms | (+ (log (/ 1/2 (sqrt (log 10)))) (+ (+ (log (log (+ (* re re) (* im im)))) (log (sqrt (/ 1 (sqrt (log 10)))))) (log (sqrt (/ 1 (sqrt (log 10))))))) |
| 326.0ms | (+ (log (/ 1/2 (sqrt (log 10)))) (+ (log (* (log (+ (* re re) (* im im))) (sqrt (/ 1 (sqrt (log 10)))))) (log (sqrt (/ 1 (sqrt (log 10))))))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 6.1b
55.1% (10.9b remaining)
Error of 17.7b against oracle of 6.8b and baseline of 31.1b