Average Error: 0.3 → 0.1
Time: 7.6s
Precision: 64
Internal precision: 384
\[\left(\left(\left(x0 + x1\right) - x2\right) + \left(\left(x1 + x2\right) - x0\right)\right) + \left(\left(x2 + x0\right) - x1\right)\]
\[\left(x1 + x2\right) + x0\]

Error

Bits error versus x0

Bits error versus x1

Bits error versus x2

Derivation

  1. Initial program 0.3

    \[\left(\left(\left(x0 + x1\right) - x2\right) + \left(\left(x1 + x2\right) - x0\right)\right) + \left(\left(x2 + x0\right) - x1\right)\]
  2. Applied simplify 0.1

    \[\leadsto \color{blue}{\left(x1 + x0\right) - \left(\left(-x1\right) + \left(x1 - x2\right)\right)}\]
  3. Applied taylor 0.1

    \[\leadsto x1 + \left(x2 + x0\right)\]
  4. Taylor expanded around 0 0.1

    \[\leadsto \color{blue}{x1 + \left(x2 + x0\right)}\]
  5. Using strategy rm
  6. Applied associate-+r+ 0.1

    \[\leadsto \color{blue}{\left(x1 + x2\right) + x0}\]
  7. Removed slow pow expressions

Runtime

Time bar (total: 7.6s) Debug log

Please include this information when filing a bug report:

herbie shell --seed '#(3052192724 3812927732 3686175817 630908657 2373248591 511094450)'
(FPCore (x0 x1 x2)
  :name "test01_sum3"
  :pre (and (< 1 x0 2) (< 1 x1 2) (< 1 x2 2))
  (+ (+ (- (+ x0 x1) x2) (- (+ x1 x2) x0)) (- (+ x2 x0) x1)))