# Epsilon
> Difference between one and the smallest value greater than one that can be represented as a [half-precision floating-point number][half-precision-floating-point-format].
[Epsilon][machine-epsilon] is defined as
where `b` is the radix (base) and `p` is the precision (number of radix bits in the significand). For [half-precision floating-point numbers][half-precision-floating-point-format], `b` is `2` and `p` is `11`.
## Usage
```javascript
var FLOAT16_EPSILON = require( '@stdlib/constants/float16/eps' );
```
#### FLOAT16_EPSILON
Difference between one and the smallest value greater than one that can be represented as a [half-precision floating-point number][half-precision-floating-point-format].
```javascript
var bool = ( FLOAT16_EPSILON === 0.0009765625 );
// returns true
```
## Examples
```javascript
var abs = require( '@stdlib/math/base/special/abs' );
var maxabs = require( '@stdlib/math/base/special/maxabs' );
var randu = require( '@stdlib/random/base/randu' );
var FLOAT16_EPSILON = require( '@stdlib/constants/float16/eps' );
var bool;
var a;
var b;
var i;
function isApprox( a, b ) {
var delta;
var tol;
delta = abs( a - b );
tol = FLOAT16_EPSILON * maxabs( a, b );
return ( delta <= tol );
}
for ( i = 0; i < 100; i++ ) {
a = randu() * 10.0;
b = a + (randu()*2.0e-3) - 1.0e-3;
bool = isApprox( a, b );
console.log( '%d %s approximately equal to %d', a, ( bool ) ? 'is' : 'is not', b );
}
```
[half-precision-floating-point-format]: https://en.wikipedia.org/wiki/Half-precision_floating-point_format
[machine-epsilon]: https://en.wikipedia.org/wiki/Machine_epsilon