The number type is inhabited by real numeric values. Specifically, it has 53 bits of precision, meaning it can accurately represent integral values in the interval , outside of which arithmetic operations will gradually lose precision. This is because the number type is implemented using double-precision floating-point numbers.
NaN, which stands for not a number, is a special value of the number type. In Lua, it is the only value that is not equal to itself.
inf, which stands for infinity, is the largest number Lua can represent. It can be obtained by the use of math.huge or