Average Error: 49.1 → 0
Time: 1.6s
Precision: 64
Internal Precision: 128
\[1.7 \cdot 10^{+308} \cdot t - 1.7 \cdot 10^{+308}\]
\[(\left( 1.7 \cdot 10^{+308} \right) \cdot t + \left(-1.7 \cdot 10^{+308}\right))_*\]

Error

Bits error versus t

Target

Original49.1
Target0
Herbie0
\[(\left( 1.7 \cdot 10^{+308} \right) \cdot t + \left(-1.7 \cdot 10^{+308}\right))_*\]

Derivation

  1. Initial program 49.1

    \[1.7 \cdot 10^{+308} \cdot t - 1.7 \cdot 10^{+308}\]
  2. Using strategy rm
  3. Applied fma-neg0

    \[\leadsto \color{blue}{(\left( 1.7 \cdot 10^{+308} \right) \cdot t + \left(-1.7 \cdot 10^{+308}\right))_*}\]
  4. Final simplification0

    \[\leadsto (\left( 1.7 \cdot 10^{+308} \right) \cdot t + \left(-1.7 \cdot 10^{+308}\right))_*\]

Reproduce

herbie shell --seed 2019008 +o rules:numerics
(FPCore (t)
  :name "fma_test2"
  :pre (<= 1.9 t 2.1)

  :herbie-target
  (fma 1.7e+308 t (- 1.7e+308))

  (- (* 1.7e+308 t) 1.7e+308))

Details

Time bar (total: 1.3s)Debug log

sample37.0ms

Algorithm
intervals

simplify8.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

8.0ms
(- (* 1.7e+308 t) 1.7e+308)

prune6.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 49.2b

localize10.0ms

Local error

Found 1 expressions with local error:

49.2b
(- (* 1.7e+308 t) 1.7e+308)

rewrite2.0ms

Algorithm
rewrite-expression-head
Counts
1 → 14
Calls

1 calls. Slowest were:

2.0ms
(- (* 1.7e+308 t) 1.7e+308)

series18.0ms

Counts
1 → 3
Calls

1 calls. Slowest were:

18.0ms
(- (* 1.7e+308 t) 1.7e+308)

simplify14.0ms

Counts
3 → 17
Calls

3 calls. Slowest were:

4.0ms
(- (* 1.7e+308 t) 1.7e+308)
4.0ms
(- (* 1.7e+308 t) 1.7e+308)
4.0ms
(- (* 1.7e+308 t) 1.7e+308)

prune45.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0b

localize5.0ms

Local error

Found 0 expressions with local error:

rewrite0.0ms

Algorithm
rewrite-expression-head
Counts
0 → 0
Calls

0 calls. Slowest were:

series0.0ms

Counts
0 → 0
Calls

0 calls. Slowest were:

simplify0.0ms

Counts
0 → 0
Calls

0 calls. Slowest were:

prune3.0ms

Pruning

1 alts after pruning (0 fresh and 1 done)

Merged error: 0b

end0.0ms

sample1.2s

Algorithm
intervals