nLab inferior limit

Inferior and superior limits

Inferior and superior limits


The inferior and superior limits (liminf\lim\,\inf and limsup\lim\,\sup, or lower and upper limits) of an infinite sequence of real numbers are two generalizations of the usual limit that exist more often (indeed always, if one allows sufficiently general answers). This notion can be generalized far beyond its original context.

Terminology and notation

The inferior limit is denoted liminf\lim\,\inf or lim̲\underline{\lim}, while the superior limit is denoted limsup\lim\,\sup or li̇m¯\overline{\operatorname{li̇m}}. These symbols come from the Latin ‘limes inferior’ and ‘limes superior’ (with Latin plurals ‘limites inferiores’ and ‘limites superiores’); saying ‘limit inferior’ or ‘limit superior’ in English, while common, is like saying ‘logarithm natural’ because the symbol for the natural logarithm is ‘ln\ln’ (from the Latin ‘logarithmus naturalis’). Another variation is to read ‘liminf\lim\,\inf’ as ‘limit infimum’ and ‘limsuplim\,\sup’ as ‘limit supremum’, although this is etymologically incorrect. Sometimes one sees the more fully translated terms ‘lower limit’ and ‘upper limit’. On the other hand, in German, untranslated Latin is most common.


Let LL be a complete lattice with a convergence structure, and let FF be a filter on (the underlying set of) LL (not a filter in LL). Then the inferior limit of FF is the limit of the infima of the sets in FF (if this limit exists):

liminfF=lim AFinfA. \lim\,\inf F = \lim_{A \in F} \inf A .

Similarly, the superior limit of FF is the limit of the suprema of the sets in FF:

limsupF=lim AFsupA. \lim\,\sup F = \lim_{A \in F} \sup A .

(Of course, if the convergence structure is not Hausdorff, then there may be multiple inferior and superior limits.) Here we are taking FF to define a couple of nets in LL, each indexed by the sets in FF; as is usual with filters, we take ABA \leq B iff BAB \subseteq A. If LL is merely a poset and not a complete lattice, then we still use the same definitions, but they can only exist if infA\inf A or supA\sup A exists for sufficiently small AFA \in F.

If FF is merely a filter base, then precisely the same formulas give the inferior and superior limits of the filter generated by FF. Of course, we can also start with anything else that generates a filter in some way, such as a sequence or more generally a net. In this case, we can write

liminf nx n=lim ninf mnx m {\lim\,\inf}_n\, x_n = {\lim}_n\, \inf_{m \geq n} x_m


limsup nx n=lim nsup mnx m. {\lim\,\sup}_n\, x_n = {\lim}_n\, \sup_{m \geq n} x_m .

Given a set XX, a filter FF on XX, and a partial function ff to LL from XX, the upper and lower limits of ff in the direction given by FF are the upper and lower limits of f(F)f(F); that is,

liminf Ff=lim AFinff(A) {\lim\,\inf}_F f = \lim_{A \in F} \inf f(A)


limsup Ff=lim AFsupf(A). {\lim\,\sup}_F f = \lim_{A \in F} \sup f(A) .

In particular, if XX is a pretopological space and cc is a adherent point of the domain of ff in XX, then we can use the neighbourhood filter of cc; similarly, if cc is an accumulation point of the domain of ff in XX, then we can use the filter of punctured neighbourhoods of cc. Then

liminfxcf(x)=lim cAinff(A) \underset{x \to c}{\lim\,\inf}\, f(x) = \lim_{c \stackrel{\circ}\in A} \inf f(A)


limsupxcf(x)=lim cAsupf(A) \underset{x \to c}{\lim\,\sup}\, f(x) = \lim_{c \stackrel{\circ}\in A} \sup f(A)

if we use neighbourhoods (so that the limit must equal f(c)f(c) if both exist, as traditionally taught in French), or

liminfxcf(x)=lim cAinff(A{c}) \underset{x \to c}{\lim\,\inf}\, f(x) = \lim_{c \stackrel{\circ}\in A} \inf f(A\setminus\{c\})


limsupxcf(x)=lim cAsupf(A{c}) \underset{x \to c}{\lim\,\sup}\, f(x) = \lim_{c \stackrel{\circ}\in A} \sup f(A\setminus\{c\})

if we use punctured neighbourhoods (so that f(c)f(c) is irrelevant to the limit, as traditionally taught in English). We can also use a neighbourhood base at cc instead of all neighbourhoods; in particular, if XX is a topological space with OO as its collection of open subsets, then we may use the (possibly punctured) open neighbourhoods of cc; then

liminfxcf(x)=lim cGOinff(G) \underset{x \to c}{\lim\,\inf}\, f(x) = \lim_{c \in G \in O} \inf f(G)


limsupxcf(x)=lim cGOsupf(G) \underset{x \to c}{\lim\,\sup}\, f(x) = \lim_{c \in G \in O} \sup f(G)

for the unpunctured limit, or

liminfxcf(x)=lim cGOinff(G{c}) \underset{x \to c}{\lim\,\inf}\, f(x) = \lim_{c \in G \in O} \inf f(G\setminus\{c\})


limsupxcf(x)=lim cGOsupf(G{c}) \underset{x \to c}{\lim\,\sup}\, f(x) = \lim_{c \in G \in O} \sup f(G\setminus\{c\})

for the punctured limit.

Every partial order on a set defines a convergence structure (the order convergence?) under which a net (x n) n(x_n)_n converges to a point x x_\infty iff there exist a monotone increasing net yy and a monotone decreasing net zz such that x =sup ny n=inf nz nx_\infty = \sup_n y_n = \inf_n z_n and, for each yy-index ii and zz-index jj, it is nn-eventually true that y ix nz jy_i \leq x_n \leq z_j. In this case, we can also write

liminfF=sup AFinfA \lim\,\inf F = \sup_{A \in F}\, \inf A


limsupF=inf AFsupA. \lim\,\sup F = \inf_{A \in F}\, \sup A .

The reason is that the net (infA) AF(\inf A)_{A \in F} is monotone increasing, so that its limit in the order convergence is the same as its supremum (using itself for yy and a constant net for zz); similarly, (supA) AF(\sup A)_{A \in F} is monotone decreasing, with its limit the same as its infimum.

Last revised on October 25, 2019 at 21:03:27. See the history of this page for a list of all contributions to it.