In this blog post, I explain the difference between essential supremum and supremum concepts without the prerequisite of knowing measure theory.
In mathematics, ess sup stands for “essential supremum” while sup
stands for “supremum”.
The supremum of a set is the smallest number that is greater than or equal to all the elements in the set. In other words, the supremum is the least upper bound of the set. It may or may not be an actual element of the set.
The essential supremum of a function is a similar concept, but it is used for functions that are not necessarily defined on a bounded set. The essential supremum of a function f is the smallest number \(M\) such that the set of points \(x\) where \(f(x)\) is greater than \(M\) has measure zero. In other words, the essential supremum is the smallest number that the function almost never exceeds.
In summary, while sup
refers to the supremum of a set, ess sup
refers to the essential supremum of a function, which is a generalization of the concept of supremum for functions defined on unbounded sets.
Definition of Supremum
The supremum, denoted as \(\sup A\), of a set \(A\) is the least upper bound of \(A\), if it exists. In other words, the supremum of \(A\) is the smallest real number \(M\) such that every element of \(A\) is less than or equal to \(M\), and there is no smaller number with this property.
Formally, if \(A\) is a non-empty set of real numbers, the supremum \(\sup A\) satisfies the following conditions:
- For every \(x\) in \(A\), \(x \leq \sup A\), meaning \(\sup A\) is an upper bound for \(A\).
- For any upper bound \(M\) of \(A\), \(M \geq \sup A\), indicating that \(\sup A\) is the least upper bound.
To illustrate with an example, let’s consider the set \(A = {2, 4, 6}\). In this case, the supremum of \(A\) is \(\sup A = 6\), as it is the smallest number greater than or equal to all elements of \(A\). If \(A\) were unbounded from above, the supremum would be \(+\infty\). However, if \(A\) has no upper bound, the supremum is undefined.
It’s important to note that the supremum may or may not belong to the set \(A\). For example, in the set \(A = (0, 1)\) (the open interval between 0 and 1), the supremum is \(\sup A = 1\), but 1 itself is not an element of \(A\).
Definition of Essential Supremum
The essential supremum of a measurable function \(f\) on a measure space \((\Omega, \mathcal{F}, \mu)\) is denoted as \(\text{ess sup}, f\) and is defined as follows:
\[\text{ess sup}\, f =\left\{\inf M \in \mathbb{R} \, \middle| \, \mu(\{x \in \Omega : |f(x)| > M\}) = 0 \right\}\]
In this definition, \(|f(x)|\) represents the absolute value of the function \(f\) at point \(x\), and \(\mu(\{x \in \Omega : |f(x)| > M\})\) represents the measure of the set of points where the absolute value of \(f\) exceeds \(M\). The infimum is taken over all real numbers \(M\) for which the measure of that set is zero, meaning it has no significant influence on the behavior of \(f\).
The essential supremum captures the essential upper bound of the function \(f\) by considering the set of points where \(f\) exceeds any given value \(M\) and removing points with negligible impact on the overall behavior of the function.
Python Code Examples
Here are some examples of how to compute the sup
and ess sup
in Python:
Supremum Example
# Define a set of numbers
numbers = [1, 5, 3, 7, 2, 9, 4]
# Compute the supremum using the built-in max() function
sup = max(numbers)
# Print the result
print("Supremum: ", sup)
Essential Supremum Example
import numpy as np
# Define a function
def f(x):
return np.sin(x) + np.random.normal(0, 0.1)
# Generate a set of random numbers
numbers = np.random.normal(0, 1, size=1000)
# Evaluate the function on the set of numbers
values = f(numbers)
# Compute the essential supremum
ess_sup = np.max(values)
# Print the result
print("Essential supremum: ", ess_sup)
In this example, we define a function f
and generate a set of random numbers numbers
. We then evaluate the function on the set of numbers and compute the ess sup
of the function f
using the np.max()
function. Note that we are using the numpy
library for generating the random numbers and computing the maximum value.
Why is
max
function used for supremum and essential supremum? Since we know that supremum and essential supremum may not be an actual element of the set.
It is correct that the max()
function always returns an actual element of the set. In contrast, the supremum and essential supremum may not be contained in the set itself.
However, in practice, it is often convenient and useful to use the max()
function to compute the supremum or essential supremum of a set of numbers or a function. This is because the max()
function is a built-in Python function that returns the largest value in a set of numbers, which is equivalent to the supremum of the set.
Similarly, the max()
function can also be used to compute the essential supremum of a function that is defined on a bounded set, as long as the set of points where the function exceeds a certain threshold has measure zero. In this case, the max()
function can be used to find the smallest number that the function almost never exceeds.
However, in more general cases where the function is defined on an unbounded set or the set of points where the function exceeds a certain threshold has positive measure, the max()
function may not be appropriate for computing the essential supremum. In these cases, other methods or numerical techniques may be necessary.
Other Techniques
If the set of points where the function exceeds a certain threshold has a positive measure, what other numerical techniques can be used to determine supremum and essential supremum?
Here are some other numerical techniques that can be used to compute the essential supremum of a function:
- Monte Carlo sampling: This involves randomly sampling points from the domain of the function and evaluating the function at each point. The maximum value of the function over all the sampled points can be used as an estimate of the essential supremum.
- Adaptive mesh refinement: This involves partitioning the domain of the function into a grid of small cells and evaluating the function at the vertices of each cell. The grid is then refined in regions where the function exceeds a certain threshold, and the process is repeated until the mesh is sufficiently fine. The maximum value of the function over all the vertices can be used as an estimate of the essential supremum.
- Interval arithmetic: This involves representing the domain of the function as intervals and computing the function over each interval using interval arithmetic. The result is a set of intervals that contains the range of the function over the entire domain. The supremum of the upper bounds of the intervals can be used as an estimate of the essential supremum.
- Linear programming: This involves formulating the problem of finding the essential supremum as a linear program and solving it using linear programming techniques. This approach can be computationally expensive for large problems, but it can provide exact solutions in some cases.
These numerical techniques can be used in conjunction with each other or with other methods depending on the specific problem at hand. It is worth noting that the choice of method may depend on factors such as the dimensionality of the problem, the accuracy required, and the computational resources available.