Average Error: 62.0 → 62.0
Time: 2.2s
Precision: 64
Internal Precision: 128
\[\frac{x - lo}{hi - lo}\]
\[0\]

Error

Bits error versus lo

Bits error versus hi

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 62.0

    \[\frac{x - lo}{hi - lo}\]
  2. Taylor expanded around 0 62.0

    \[\leadsto \color{blue}{0}\]
  3. Final simplification62.0

    \[\leadsto 0\]

Reproduce

herbie shell --seed 2019016 
(FPCore (lo hi x)
  :name "(/ (- x lo) (- hi lo))"
  :pre (and (< lo -1e+308) (> hi 1e+308))
  (/ (- x lo) (- hi lo)))

Details

Time bar (total: 2.1s)Debug log

sample29.0ms

Algorithm
intervals
Results
256×(pre true 80)
256×(body real 80)

simplify8.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
8.0ms
(/ (- x lo) (- hi lo))

prune4.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 62.0b

localize14.0ms

Local error

Found 1 expressions with local error:

62.0b
(/ (- x lo) (- hi lo))

rewrite3.0ms

Algorithm
rewrite-expression-head
Rules
add-cube-cbrt
times-frac
*-un-lft-identity
add-sqr-sqrt
associate-/l*
add-exp-log
add-cbrt-cube
associate-/r*
associate-/l/
flip--
associate-/r/
flip3--
add-log-exp
div-inv
div-exp
div-sub
frac-2neg
clear-num
cbrt-undiv
pow1
Counts
1 → 32
Calls
1 calls:
Slowest
3.0ms
(/ (- x lo) (- hi lo))

series35.0ms

Counts
1 → 3
Calls
1 calls:
Slowest
35.0ms
(/ (- x lo) (- hi lo))

simplify480.0ms

Counts
33 → 35
Calls
33 calls:
Slowest
191.0ms
(/ (* (* (- x lo) (- x lo)) (- x lo)) (* (* (- hi lo) (- hi lo)) (- hi lo)))
37.0ms
(/ (* (cbrt (- x lo)) (cbrt (- x lo))) 1)
27.0ms
(+ (* hi hi) (+ (* lo lo) (* hi lo)))
19.0ms
(/ (* (cbrt (- x lo)) (cbrt (- x lo))) (* (cbrt (- hi lo)) (cbrt (- hi lo))))
18.0ms
(- (* x x) (* lo lo))

prune256.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 62.0b

localize1.0ms

Local error

Found 0 expressions with local error:

rewrite0.0ms

Algorithm
rewrite-expression-head
Rules
Counts
0 → 0
Calls
0 calls:
Slowest

series0.0ms

Counts
0 → 0
Calls
0 calls:
Slowest

simplify0.0ms

Counts
0 → 0
Calls
0 calls:
Slowest

prune2.0ms

Pruning

1 alts after pruning (0 fresh and 1 done)

Merged error: 62.0b

end0.0ms

sample1.3s

Algorithm
intervals
Results
8000×(pre true 80)
8000×(body real 80)