# Cantor function

In mathematics, the Cantor function is an example of a function that is continuous, but not absolutely continuous. It is a notorious counterexample in analysis, because it challenges naive intuitions about continuity, derivative, and measure. Though it is continuous everywhere and has zero derivative almost everywhere, its value still goes from 0 to 1 as its argument reaches from 0 to 1. Thus, in one sense the function seems very much like a constant one which cannot grow, and in another, it does indeed monotonically grow.
It is also called the Cantor ternary function, the Lebesgue function, Lebesgue's singular function, the Cantor–Vitali function, the Devil's staircase, the Cantor staircase function, and the Cantor–Lebesgue function. Georg Cantor (1884) introduced the Cantor function and mentioned that Scheeffer pointed out that it was a counterexample to an extension of the fundamental theorem of calculus claimed by Harnack. The Cantor function was discussed and popularized by Scheeffer (1884), Lebesgue (1904) and Vitali (1905).

## Definition

To define the Cantor function $c:[0,1]\to [0,1]$, let $x$ be any number in $[0,1]$ and obtain $c(x)$ by the following steps:
* Express $x$ in base 3, using digits 0, 1, 2.
* If the base-3 representation of $x$ contains a 1, replace every digit strictly after the first 1 with 0.
* Replace any remaining 2s with 1s.
* Interpret the result as a binary number. The result is $c(x)$.
For example:
* ${\tfrac {1}{4}}$ has the ternary representation 0.02020202... There are no 1s so the next stage is still 0.02020202... This is rewritten as 0.01010101... This is the binary representation of ${\tfrac {1}{3}}$, so $c({\tfrac {1}{4}})={\tfrac {1}{3}}$.
* ${\tfrac {1}{5}}$ has the ternary representation 0.01210121... The digits after the first 1 are replaced by 0s to produce 0.01000000... This is not rewritten since it has no 2s. This is the binary representation of ${\tfrac {1}{4}}$, so $c({\tfrac {1}{5}})={\tfrac {1}{4}}$.
* ${\tfrac {200}{243}}$ has the ternary representation 0.21102 (or 0.211012222...). The digits after the first 1 are replaced by 0s to produce 0.21. This is rewritten as 0.11. This is the binary representation of ${\tfrac {3}{4}}$, so $c({\tfrac {200}{243}})={\tfrac {3}{4}}$.
Equivalently, if ${\mathcal {C}}$ is the Cantor set on [0,1], then the Cantor function $c:[0,1]\to [0,1]$ can be defined as
$c(x)={\begin{cases}\displaystyle \sum _{n=1}^{\infty }{\frac {a_{n}}{2^{n}}},&\displaystyle {\text{if }}x=\sum _{n=1}^{\infty }{\frac {2a_{n}}{3^{n}}}\in {\mathcal {C}}\ {\text{for}}\ a_{n}\in \{0,1\};\\\displaystyle \sup _{y\leq x,\,y\in {\mathcal {C}}}c(y),&\displaystyle {\text{if }}x\in [0,1]\setminus {\mathcal {C}}.\end{cases}}$
This formula is well-defined, since every member of the Cantor set has a unique base 3 representation that only contains the digits 0 or 2. (For some members of ${\mathcal {C}}$, the ternary expansion is repeating with trailing 2's and there is an alternative non-repeating expansion ending in 1. For example, ${\tfrac {1}{3}}$ = 0.1$_3$ = 0.02222...$_3$ is a member of the Cantor set). Since $c(0)=0$ and $c(1)=1$, and $c$ is monotonic on ${\mathcal {C}}$, it is clear that $0\leq c(x)\leq 1$ also holds for all $x\in [0,1]\smallsetminus {\mathcal {C}}$.

## Properties

The Cantor function challenges naive intuitions about continuity and measure; though it is continuous everywhere and has zero derivative almost everywhere, c(x){\textstyle c(x)} goes from 0 to 1 as x{\textstyle x} goes from 0 to 1, and takes on every value in between. The Cantor function is the most frequently cited example of a real function that is uniformly continuous (precisely, it is Hölder continuous of exponent α = log 2/log 3) but not absolutely continuous. It is constant on intervals of the form (0.x$_1$x$_2$x$_3$...x$_n$022222..., 0.x$_1$x$_2$x$_3$...x$_n$200000...), and every point not in the Cantor set is in one of these intervals, so its derivative is 0 outside of the Cantor set. On the other hand, it has no derivative at any point in an uncountable subset of the Cantor set containing the interval endpoints described above.
The Cantor function can also be seen as the cumulative probability distribution function of the 1/2-1/2 Bernoulli measure μ supported on the Cantor set: c(x)=μ([0, x]){\textstyle c(x)=\mu ([0, x])}. This probability distribution, called the Cantor distribution, has no discrete part. That is, the corresponding measure is atomless. This is why there are no jump discontinuities in the function; any such jump would correspond to an atom in the measure.
However, no non-constant part of the Cantor function can be represented as an integral of a probability density function; integrating any putative probability density function that is not almost everywhere zero over any interval will give positive probability to some interval to which this distribution assigns probability zero. In particular, as Vitali (1905) pointed out, the function is not the integral of its derivative even though the derivative exists almost everywhere.
The Cantor function is the standard example of a singular function.
The Cantor function is also a standard example of a function with bounded variation but, as mentioned above, is not absolutely continuous. However, every absolutely continuous function is continuous with bounded variation.
The Cantor function is non-decreasing, and so in particular its graph defines a rectifiable curve. Scheeffer (1884) showed that the arc length of its graph is 2. Note that the graph of any nondecreasing function such that $f(0)=0$ and $f(1)=1$ has length not greater than 2. In this sense, the Cantor function is extremal.

### Lack of absolute continuity

Because the Lebesgue measure of the uncountably infinite Cantor set is 0, for any positive ε < 1 and δ, there exists a finite sequence of pairwise disjoint sub-intervals with total length < δ over which the Cantor function cumulatively rises more than ε.
In fact, for every δ > 0 there are finitely many pairwise disjoint intervals (x$_k$,y$_k$) (1 ≤ k ≤ M) with $\sum \limits _{k=1}^{M}(y_{k}-x_{k})<\delta$ and $\sum \limits _{k=1}^{M}(c(y_{k})-c(x_{k}))=1$.

## Alternative definitions
### Iterative construction

Below we define a sequence {f$_n$} of functions on the unit interval that converges to the Cantor function.
Let f$_0$(x) = x.
Then, for every integer n ≥ 0, the next function f$_{n+1}$(x) will be defined in terms of f$_n$(x) as follows:
Let f$_{n+1}$(x) = 1/2 × f$_n$(3x), when 0 ≤ x ≤ 1/3 ;
Let f$_{n+1}$(x) = 1/2, when 1/3 ≤ x ≤ 2/3 ;
Let f$_{n+1}$(x) = 1/2 + 1/2 × f$_n$(3 x − 2), when 2/3 ≤ x ≤ 1.
The three definitions are compatible at the end-points 1/3 and 2/3, because f$_n$(0) = 0 and f$_n$(1) = 1 for every n, by induction. One may check that f$_n$ converges pointwise to the Cantor function defined above. Furthermore, the convergence is uniform. Indeed, separating into three cases, according to the definition of f$_{n+1}$, one sees that
    $\max _{x\in [0,1]}|f_{n+1}(x)-f_{n}(x)|\leq {\frac {1}{2}}\,\max _{x\in [0,1]}|f_{n}(x)-f_{n-1}(x)|,\quad n\geq 1.$
If f denotes the limit function, it follows that, for every n ≥ 0,
    $\max _{x\in [0,1]}|f(x)-f_{n}(x)|\leq 2^{-n+1}\,\max _{x\in [0,1]}|f_{1}(x)-f_{0}(x)|.$

### Fractal volume

The Cantor function is closely related to the Cantor set. The Cantor set C can be defined as the set of those numbers in the interval [0, 1] that do not contain the digit 1 in their base-3 (triadic) expansion, except if the 1 is followed by zeros only (in which case the tail 1000$\ldots$ can be replaced by 0222$\ldots$ to get rid of any 1). It turns out that the Cantor set is a fractal with (uncountably) infinitely many points (zero-dimensional volume), but zero length (one-dimensional volume). Only the D-dimensional volume $H_{D}$ (in the sense of a Hausdorff-measure) takes a finite value, where $D=\log(2)/\log(3)$ is the fractal dimension of C. We may define the Cantor function alternatively as the D-dimensional volume of sections of the Cantor set
    $f(x)=H_{D}(C\cap (0,x)).$

## Self-similarity

The Cantor function possesses several symmetries. For $0\leq x\leq 1$, there is a reflection symmetry
    $c(x)=1-c(1-x)$
and a pair of magnifications, one on the left and one on the right:
    $c\left({\frac {x}{3}}\right)={\frac {c(x)}{2}}$
and
    $c\left({\frac {x+2}{3}}\right)={\frac {1+c(x)}{2}}$
The magnifications can be cascaded; they generate the dyadic monoid. This is exhibited by defining several helper functions. Define the reflection as
    $r(x)=1-x$
The first self-symmetry can be expressed as
    $r\circ c=c\circ r$
where the symbol $\circ$ denotes function composition. That is, $(r\circ c)(x)=r(c(x))=1-c(x)$ and likewise for the other cases. For the left and right magnifications, write the left-mappings
    $L_{D}(x)={\frac {x}{2}}$ and $L_{C}(x)={\frac {x}{3}}$
Then the Cantor function obeys
    $L_{D}\circ c=c\circ L_{C}$
Similarly, define the right mappings as
    $R_{D}(x)={\frac {1+x}{2}}$ and $R_{C}(x)={\frac {2+x}{3}}$
Then, likewise,
    $R_{D}\circ c=c\circ R_{C}$
The two sides can be mirrored one onto the other, in that
    $L_{D}\circ r=r\circ R_{D}$
and likewise,
    $L_{C}\circ r=r\circ R_{C}$
These operations can be stacked arbitrarily. Consider, for example, the sequence of left-right moves $LRLLR.$ Adding the subscripts C and D, and, for clarity, dropping the composition operator $\circ$ in all but a few places, one has:
    $L_{D}R_{D}L_{D}L_{D}R_{D}\circ c=c\circ L_{C}R_{C}L_{C}L_{C}R_{C}$
Arbitrary finite-length strings in the letters L and R correspond to the dyadic rationals, in that every dyadic rational can be written as both $y=n/2^{m}$ for integer n and m and as finite length of bits $y=0.b_{1}b_{2}b_{3}\cdots b_{m}$ with $b_{k}\in \{0,1\}.$ Thus, every dyadic rational is in one-to-one correspondence with some self-symmetry of the Cantor function.
Some notational rearrangements can make the above slightly easier to express. Let $g_{0}$ and $g_{1}$ stand for L and R. Function composition extends this to a monoid, in that one can write $g_{010}=g_{0}g_{1}g_{0}$ and generally, $g_{A}g_{B}=g_{AB}$ for some binary strings of digits A, B, where AB is just the ordinary concatenation of such strings. The dyadic monoid M is then the monoid of all such finite-length left-right moves. Writing $\gamma \in M$ as a general element of the monoid, there is a corresponding self-symmetry of the Cantor function:
    $\gamma _{D}\circ c=c\circ \gamma _{C}$
The dyadic monoid itself has several interesting properties. It can be viewed as a finite number of left-right moves down an infinite binary tree; the infinitely distant "leaves" on the tree correspond to the points on the Cantor set, and so, the monoid also represents the self-symmetries of the Cantor set. In fact, a large class of commonly occurring fractals are described by the dyadic monoid; additional examples can be found in the article on de Rham curves. Other fractals possessing self-similarity are described with other kinds of monoids. The dyadic monoid is itself a sub-monoid of the modular group $SL(2,\mathbb {Z} ).$
Note that the Cantor function bears more than a passing resemblance to Minkowski's question-mark function. In particular, it obeys the exact same symmetry relations, although in an altered form.

## Generalizations

Let
    $y=\sum _{k=1}^{\infty }b_{k}2^{-k}$
be the dyadic (binary) expansion of the real number 0 ≤ y ≤ 1 in terms of binary digits b$_k$ ∈ {0,1}. This expansion is discussed in greater detail in the article on the dyadic transformation. Then consider the function
    $C_{z}(y)=\sum _{k=1}^{\infty }b_{k}z^{k}.$
For z = 1/3, the inverse of the function x = 2 C$_{1/3}$(y) is the Cantor function. That is, y = y(x) is the Cantor function. In general, for any z < 1/2, C$_z$(y) looks like the Cantor function turned on its side, with the width of the steps getting wider as z approaches zero.
As mentioned above, the Cantor function is also the cumulative distribution function of a measure on the Cantor set. Different Cantor functions, or Devil's Staircases, can be obtained by considering different atom-less probability measures supported on the Cantor set or other fractals. While the Cantor function has derivative 0 almost everywhere, current research focuses on the question of the size of the set of points where the upper right derivative is distinct from the lower right derivative, causing the derivative to not exist. This analysis of differentiability is usually given in terms of fractal dimension, with the Hausdorff dimension the most popular choice. This line of research was started in the 1990s by Darst, who showed that the Hausdorff dimension of the set of non-differentiability of the Cantor function is the square of the dimension of the Cantor set, $(\log 2/\log 3)^{2}$. Subsequently Falconer showed that this squaring relationship holds for all Ahlfors's regular, singular measures, i.e.$\dim _{H}\left\{x:f'(x)=\lim _{h\to 0^{+}}{\frac {\mu ([x,x+h])}{h}}{\text{ does not exist}}\right\}=\left(\dim _{H}\operatorname {supp} (\mu )\right)^{2}$Later, Troscheit obtain a more comprehensive picture of the set where the derivative does not exist for more general normalized Gibb's measures supported on self-conformal and self-similar sets.
Hermann Minkowski's question mark function loosely resembles the Cantor function visually, appearing as a "smoothed out" form of the latter; it can be constructed by passing from a continued fraction expansion to a binary expansion, just as the Cantor function can be constructed by passing from a ternary expansion to a binary expansion. The question mark function has the interesting property of having vanishing derivatives at all rational numbers.