Floor function

# Floor function

Overview
In mathematics
Mathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...

and computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

, the floor and ceiling function
Function (mathematics)
In mathematics, a function associates one quantity, the argument of the function, also known as the input, with another quantity, the value of the function, also known as the output. A function assigns exactly one output to each input. The argument and the value may be real numbers, but they can...

s map a real number
Real number
In mathematics, a real number is a value that represents a quantity along a continuum, such as -5 , 4/3 , 8.6 , √2 and π...

to the largest previous or the smallest following integer
Integer
The integers are formed by the natural numbers together with the negatives of the non-zero natural numbers .They are known as Positive and Negative Integers respectively...

, respectively. More precisely, floor(x) = is the largest integer not greater than x and ceiling(x) = is the smallest integer not less than x.

Carl Friedrich Gauss
Carl Friedrich Gauss
Johann Carl Friedrich Gauss was a German mathematician and scientist who contributed significantly to many fields, including number theory, statistics, analysis, differential geometry, geodesy, geophysics, electrostatics, astronomy and optics.Sometimes referred to as the Princeps mathematicorum...

introduced the square bracket notation [x] for the floor function in his third proof of quadratic reciprocity
In number theory, the law of quadratic reciprocity is a theorem about modular arithmetic which gives conditions for the solvability of quadratic equations modulo prime numbers...

(1808).
This remained the standard in mathematics until Kenneth E. Iverson
Kenneth E. Iverson
Kenneth Eugene Iverson was a Canadian computer scientist noted for the development of the APL programming language in 1962. He was honored with the Turing Award in 1979 for his contributions to mathematical notation and programming language theory...

introduced the names "floor" and "ceiling" and the corresponding notations x and x in his 1962 book A Programming Language.
Discussion

Encyclopedia
In mathematics
Mathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...

and computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

, the floor and ceiling function
Function (mathematics)
In mathematics, a function associates one quantity, the argument of the function, also known as the input, with another quantity, the value of the function, also known as the output. A function assigns exactly one output to each input. The argument and the value may be real numbers, but they can...

s map a real number
Real number
In mathematics, a real number is a value that represents a quantity along a continuum, such as -5 , 4/3 , 8.6 , √2 and π...

to the largest previous or the smallest following integer
Integer
The integers are formed by the natural numbers together with the negatives of the non-zero natural numbers .They are known as Positive and Negative Integers respectively...

, respectively. More precisely, floor(x) = is the largest integer not greater than x and ceiling(x) = is the smallest integer not less than x.

## Notation

Carl Friedrich Gauss
Carl Friedrich Gauss
Johann Carl Friedrich Gauss was a German mathematician and scientist who contributed significantly to many fields, including number theory, statistics, analysis, differential geometry, geodesy, geophysics, electrostatics, astronomy and optics.Sometimes referred to as the Princeps mathematicorum...

introduced the square bracket notation [x] for the floor function in his third proof of quadratic reciprocity
In number theory, the law of quadratic reciprocity is a theorem about modular arithmetic which gives conditions for the solvability of quadratic equations modulo prime numbers...

(1808).
This remained the standard in mathematics until Kenneth E. Iverson
Kenneth E. Iverson
Kenneth Eugene Iverson was a Canadian computer scientist noted for the development of the APL programming language in 1962. He was honored with the Turing Award in 1979 for his contributions to mathematical notation and programming language theory...

introduced the names "floor" and "ceiling" and the corresponding notations x and x in his 1962 book A Programming Language. Both notations are now used in mathematics; this article follows Iverson.

The floor function is also called the greatest integer or entier (French for "integer") function, and its value at x is called the integral part or integer part of x; for negative values of x the latter terms are sometimes instead taken to be the value of the ceiling function, i.e., the value of x rounded to an integer towards 0. The language APL (programming language) uses `⌊x`; other computer languages commonly use notations like `entier(x)` (Algol), `INT(x)` (BASIC
BASIC
BASIC is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use - the name is an acronym from Beginner's All-purpose Symbolic Instruction Code....

), or `floor(x)`(C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

, R
R (programming language)
R is a programming language and software environment for statistical computing and graphics. The R language is widely used among statisticians for developing statistical software, and R is widely used for statistical software development and data analysis....

, and Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

). In mathematics, it can also be written with boldface or double brackets .

The ceiling function is usually denoted by `ceil(x)` or `ceiling(x)` in non-APL computer languages that have a notation for this function. The J Programming Language
J (programming language)
The J programming language, developed in the early 1990s by Kenneth E. Iverson and Roger Hui, is a synthesis of APL and the FP and FL function-level languages created by John Backus....

, a follow on to APL that is designed to use standard keyboard symbols, uses >. for ceiling and <. for floor. In mathematics, there is another notation with reversed boldface or double brackets or just using normal reversed brackets ]x[.

The fractional part sawtooth function, denoted by for real x, is defined by the formula

For all x,

### Examples

Sample value x Floor Ceiling Fractional part
12/5 = 2.4 2 3 2/5 = 0.4
2.7 2 3 0.7
−2.7 −3 −2 0.3
−2 −2 −2 0

## Definition and properties

In the following formulas, x and y are real numbers, k, m, and n are integers, and is the set of integer
Integer
The integers are formed by the natural numbers together with the negatives of the non-zero natural numbers .They are known as Positive and Negative Integers respectively...

s (positive, negative, and zero).

Floor and ceiling may be defined by the set equations

Since there is exactly one integer in a half-open interval of length one, for any real x there are unique integers m and n satisfying

Then   and
may also be taken as the definition of floor and ceiling.

### Equivalences

These formulas can be used to simplify expressions involving floors and ceilings.

In the language of order theory
Order theory
Order theory is a branch of mathematics which investigates our intuitive notion of order using binary relations. It provides a formal framework for describing statements such as "this is less than that" or "this precedes that". This article introduces the field and gives some basic definitions...

, the floor function is a residuated mapping
Residuated mapping
In mathematics, the concept of a residuated mapping arises in the theory of partially ordered sets. It refines the concept of a monotone function....

, that is, part of a Galois connection
Galois connection
In mathematics, especially in order theory, a Galois connection is a particular correspondence between two partially ordered sets . The same notion can also be defined on preordered sets or classes; this article presents the common case of posets. Galois connections generalize the correspondence...

: it is the upper adjoint of the function that embeds the integers into the reals.

These formulas show how adding integers to the arguments affect the functions:

The above are not necessarily true if n is not an integer; however:

### Relations among the functions

It is clear from the definitions that   with equality if and only if x is an integer, i.e.

In fact, since for integers n:

Negating the argument switches floor and ceiling and changes the sign:   i.e.

Negating the argument complements the fractional part:

The floor, ceiling, and fractional part functions are idempotent
Idempotence
Idempotence is the property of certain operations in mathematics and computer science, that they can be applied multiple times without changing the result beyond the initial application...

:

The result of nested floor or ceiling functions is the innermost function:

For fixed y, x mod y is idempotent:

Also, from the definitions,

### Quotients

If m and n are integers and n ≠ 0,

If n is positive

If m is positive

For m = 2 these imply

More generally, for positive m (See Hermite's identity)

The following can be used to convert floors to ceilings and vice-versa (m positive)

If m and n are positive and coprime
Coprime
In number theory, a branch of mathematics, two integers a and b are said to be coprime or relatively prime if the only positive integer that evenly divides both of them is 1. This is the same thing as their greatest common divisor being 1...

, then

Since the right-hand side is symmetrical in m and n, this implies that

More generally, if m and n are positive,

This is sometimes called a reciprocity law.

### Nested divisions

For positive integers m,n, and arbitrary real number x:

### Continuity

Continuous function
In mathematics, a continuous function is a function for which, intuitively, "small" changes in the input result in "small" changes in the output. Otherwise, a function is said to be "discontinuous". A continuous function with a continuous inverse function is called "bicontinuous".Continuity of...

, but all are piecewise linear.   and are piecewise constant function
Constant function
In mathematics, a constant function is a function whose values do not vary and thus are constant. For example the function f = 4 is constant since f maps any value to 4...

s, with discontinuites at the integers. also has discontinuites at the integers, and   as a function of x for fixed y is discontinuous at multiples of y.

is upper semi-continuous
Semi-continuity
In mathematical analysis, semi-continuity is a property of extended real-valued functions that is weaker than continuity...

and    and   are lower semi-continuous. x mod y is lower semicontinuous for positive y and upper semi-continuous for negative y.

### Series expansions

Since none of the functions discussed in this article are continuous, none of them have a power series expansion. Since floor and ceiling are not periodic, they do not have Fourier series
Fourier series
In mathematics, a Fourier series decomposes periodic functions or periodic signals into the sum of a set of simple oscillating functions, namely sines and cosines...

expansions.

x mod y for fixed y has the Fourier series expansion

in particular {x} = x mod 1 is given by

At points of discontinuity, a Fourier series converges to a value that is the average of its limits on the left and the right, unlike the floor, ceiling and fractional part functions: for y fixed and x a multiple of y the Fourier series given converges to y/2, rather than to x mod y = 0. At points of continuity the series converges to the true value.

Using the formula {x} = x − floor(x), floor(x) = x − {x} gives

### Mod operator

The mod operator, denoted by x mod y for real x and y, y ≠ 0, is defined by the formula

x mod y is always between 0 and y; i.e.

if y is positive,
and if y is negative,

If x is an integer and y is a positive integer,

x mod y for a fixed y is a sawtooth function.

Gauss's third proof of quadratic reciprocity, as modified by Eisenstein, has two basic steps.

Let p and q be distinct positive odd prime numbers, and let

First, Gauss's lemma
Gauss's lemma (number theory)
Gauss's lemma in number theory gives a condition for an integer to be a quadratic residue. Although it is not useful computationally, it has theoretical significance, being involved in some proofs of quadratic reciprocity....

is used to show that the Legendre symbol
Legendre symbol
In number theory, the Legendre symbol is a multiplicative function with values 1, −1, 0 that is a quadratic character modulo a prime number p: its value on a quadratic residue mod p is 1 and on a quadratic non-residue is −1....

s are given by

and

The second step is to use a geometric argument to show that

Combining these formulas gives quadratic reciprocity in the form

There are formulas that use floor to express the quadratic character of small numbers mod odd primes p:

### Rounding

The ordinary rounding
Rounding
Rounding a numerical value means replacing it by another value that is approximately equal but has a shorter, simpler, or more explicit representation; for example, replacing \$23.4476 with \$23.45, or the fraction 312/937 with 1/3, or the expression √2 with 1.414.Rounding is often done on purpose to...

of the positive number x to the nearest integer can be expressed as The ordinary rounding
Rounding
Rounding a numerical value means replacing it by another value that is approximately equal but has a shorter, simpler, or more explicit representation; for example, replacing \$23.4476 with \$23.45, or the fraction 312/937 with 1/3, or the expression √2 with 1.414.Rounding is often done on purpose to...

of the negative number x to the nearest integer can be expressed as

### Truncation

The truncation
Truncation
In mathematics and computer science, truncation is the term for limiting the number of digits right of the decimal point, by discarding the least significant ones.For example, consider the real numbersThe result would be:- Truncation and floor function :...

of a nonnegative number is given by The truncation of a nonpositive number is given by .

The truncation of any real number can be given by: , where sgn(x) is the sign function
Sign function
In mathematics, the sign function is an odd mathematical function that extracts the sign of a real number. To avoid confusion with the sine function, this function is often called the signum function ....

.

### Number of digits

The number of digits in base b of a positive integer k is

with the right side of the equation also holding true for .

### Factors of factorials

Let n be a positive integer and p a positive prime number. The exponent of the highest power of p that divides n! is given by the formula

Note that this is a finite sum, since the floors are zero when pk > n.

### Beatty sequence

The Beatty sequence
Beatty sequence
In mathematics, a Beatty sequence is the sequence of integers found by taking the floor of the positive multiplesof a positive irrational number...

shows how every positive irrational number
Irrational number
In mathematics, an irrational number is any real number that cannot be expressed as a ratio a/b, where a and b are integers, with b non-zero, and is therefore not a rational number....

gives rise to a partition of the natural number
Natural number
In mathematics, the natural numbers are the ordinary whole numbers used for counting and ordering . These purposes are related to the linguistic notions of cardinal and ordinal numbers, respectively...

s into two sequences via the floor function.

### Euler's constant (γ)

There are formulas for Euler's constant
Euler–Mascheroni constant
The Euler–Mascheroni constant is a mathematical constant recurring in analysis and number theory, usually denoted by the lowercase Greek letter ....

γ = 0.57721 56649 ... that involve the floor and ceiling, e.g.

and

### Riemann function (ζ)

The fractional part function also shows up in integral representations of the Riemann zeta function. It is straightforward to prove (using integration by parts) that if φ(x) is any function with a continuous derivative in the closed interval [a, b],

Letting φ(n) = n−s for real part of s greater than 1 and letting a and b be integers, and letting b approach infinity gives

This formula is valid for all s with real part greater than −1, (except s = 1, where there is a pole) and combined with the Fourier expansion for {x} can be used to extend the zeta function to the entire complex plane and to prove its functional equation.

For s = σ + i t in the critical strip (i.e. 0 < σ < 1),

In 1947 van der Pol
Balthasar van der Pol
Balthasar van der Pol was a Dutch physicist.Van der Pol studied physics in Utrecht, and in 1920 he was awarded his doctorate . He studied experimental physics with John Ambrose Fleming and Sir J. J. Thomson in England...

used this representation to construct an analogue computer for finding roots of the zeta function.

### Formulas for prime numbers

n is a prime if and only if

Let r > 1 be an integer, pn be the nth prime, and define

Then

There is a number θ = 1.3064... (Mill's constant) with the property that

are all prime.

There is also a number ω = 1.9287800... with the property that

are all prime.

π(x) is the number of primes less than or equal to x. It is a straightforward deduction from Wilson's theorem that

Also, if n ≥ 2,

None of the formulas in this section is of any practical use.

### Solved problem

Ramanujan submitted this problem to the Journal of the Indian Mathematical Society.

If n is a positive integer, prove that

(i)

(ii)

(iii)

### Unsolved problem

The study of Waring's problem
Waring's problem
In number theory, Waring's problem, proposed in 1770 by Edward Waring, asks whether for every natural number k there exists an associated positive integer s such that every natural number is the sum of at most s kth powers of natural numbers...

has led to an unsolved problem:

Are there any positive integers k, k ≥ 6, such that

Mahler
Kurt Mahler
Kurt Mahler was a mathematician and Fellow of the Royal Society.He was a student at the universities in Frankfurt and Göttingen, graduating with a Ph.D...

has proved there can only be a finite number of such k; none are known.

## Computer implementations

Many programming languages (including C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

,, PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

, and Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

) provide standard functions for floor and ceiling.

A spreadsheet is a computer application that simulates a paper accounting worksheet. It displays multiple cells usually in a two-dimensional matrix or grid consisting of rows and columns. Each cell contains alphanumeric text, numeric values or formulas...

programs support some form of a `ceiling` function. Although the details differ between programs, most implementations support a second parameter—a multiple of which the given number is to be rounded to. For example, `ceiling(2, 3)` rounds 2 up to the nearest multiple of 3, giving 3. The definition of what "round up" means, however, differs from program to program.

Until Excel 2010, Microsoft Excel
Microsoft Excel
Microsoft Excel is a proprietary commercial spreadsheet application written and distributed by Microsoft for Microsoft Windows and Mac OS X. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications...

's `ceiling` function was incorrect for negative arguments; ceiling(-4.5) was -5.
. This has followed through to the Office Open XML file format. The correct ceiling function can be implemented using "`-INT(-value)`". Excel 2010 now follows the standard definition.

The OpenDocument
OpenDocument
The Open Document Format for Office Applications is an XML-based file format for representing electronic documents such as spreadsheets, charts, presentations and word processing documents....

file format, as used by OpenOffice.org
OpenOffice.org
OpenOffice.org, commonly known as OOo or OpenOffice, is an open-source application suite whose main components are for word processing, spreadsheets, presentations, graphics, and databases. OpenOffice is available for a number of different computer operating systems, is distributed as free software...

and others, follows the mathematical definition of ceiling for its `ceiling` function, with an optional parameter for Excel compatibility. For example, `CEILING(-4.5)` returns −4.

### Typesetting

The floor and ceiling function are usually typeset with left and right square brackets where the upper (for floor function) or lower (for ceiling function) horizontal bars are missing, and, e.g., in the LaTeX
LaTeX
LaTeX is a document markup language and document preparation system for the TeX typesetting program. Within the typesetting system, its name is styled as . The term LaTeX refers only to the language in which documents are written, not to the editor used to write those documents. In order to...

typesetting system these symbols can be specified with the \lfloor, \rfloor, \lceil and \rceil commands in math mode. HTML 4.0 uses the same names: &lfloor;, &rfloor;, &lceil;, and &rceil;. Unicode
Unicode
Unicode is a computing industry standard for the consistent encoding, representation and handling of text expressed in most of the world's writing systems...

contains codepoints for these symbols at `U+2308``U+230B`: ⌈x⌉, ⌊x⌋.