Measuring the regularity of a graph by its Laplacian eigenvalues

Let {G} be a graph with vertices {1, 2, \dots, n}. The degree of vertex {i} is denoted {d_i}. Let {L} be the Laplacian matrix of {G}, so that {L_{ii}=d_i}, {L_{ij}} is {-1} when the vertices {i, j} are adjacent, and is {0} otherwise. The eigenvalues of {L} are written as {\lambda_1\le \dots \le \lambda_n}.

The graph is regular if all vertices have the same degree: {d_1=\cdots = d_n}. How can this property be seen from its Laplacian eigenvalues {\lambda_1, \dots, \lambda_n}?

Since the sum of eigenvalues is equal to the trace, we have {\sum \lambda_i = \sum d_i}. Moreover, {\sum \lambda_i^2} is the trace of {L^2}, which is equal to the sum of the squares of all entries of {L}. This sum is {\sum d_i^2 + \sum d_i} because the {i}th row of {L} contains one entry equal to {d_i} and {d_i} entries equal to {-1}. In conclusion, {\sum d_i^2 = \sum \lambda_i^2 - \sum\lambda_i}.

The Cauchy-Schwarz inequality says that {n\sum d_i^2 \ge \left(\sum d_i \right)^2} with equality if and only if all numbers {d_i} are equal, i.e., the graph is regular. In terms of eigenvalues, this means that the difference
{\displaystyle D =n\sum d_i^2 - \left(\sum d_i \right)^2 = n\sum (\lambda_i^2 - \lambda_i) - \left( \sum\lambda_i \right)^2 }
is always nonnegative, and is equal to zero precisely when the graph is regular. This is how one can see the regularity of a graph from its Laplacian spectrum.

As an aside, {D } is an even integer. Indeed, the sum {\sum d_i} is even because it double-counts the edges. Hence the number of vertices of odd degree is even, which implies that {\sum d_i^k } is even for every positive integer  {k }.

Up to a constant factor, {D} is simply the degree variance: the variance of the sequence {d_1, \dots, d_n}. What graph maximizes it for a given {n}? We want to have some very large degrees and some very small ones.

Let {G_{m, n}} be the union of the complete graph {K_m} on {m} vertices and {(n-m)} isolated vertices. The sum of degrees is {m(m-1)} and the sum of squares of degrees is {m(m-1)^2}. Hence,

{D = nm(m-1)^2 - (m(m-1))^2 = m(m-1)^2(n-m)}

For {n=3, 4, 5, 6} the maximum is attained by {m=n-1}, that is there is one isolated vertex. For {n=7, 8, 9, 10} the maximum is {m=n-2}. In general it is attained by {m^*=\lfloor (3n+2)/4 \rfloor}.

The graph {G_{m, n}} is disconnected. But any graph has the same degree variance as its complement. And the complement {G^c(m, n)} is always connected: it consists of a “center”, a complete graph on {n-m} vertices, and “periphery”, a set of {m} vertices that are connected to each central vertex. Put another way, {G^c(m, n)} is obtained from the complete bipartite graph {K_{m, n-m}} by connecting all vertices of the {n-m} group together.

Tom A. B. Snijders (1981) proved that {G(m^*, n)} and {G^c(m^*, n)} are the only graphs maximizing the degree variance; in particular, {G^c(m^*, n)} is the unique maximizer among the connected graphs. It is pictured below for {n=4, \dots, 9}.

The displacement set of nonlinear maps in vector spaces

Given a vector space {V} and a map {f\colon V\to V} (linear or not), consider the displacement set of {f}, denoted {D(f) = \{f(x)-x\colon x\in V\}}. For linear maps this is simply the range of the operator {f-I} and therefore is a subspace.

The essentially nonlinear operations of taking the inverse or composition of maps become almost linear when the displacement set is considered. Specifically, if {f} has an inverse, then {D(f^{-1}) = -D(f)}, which is immediate from the definition. Also, {D(f\circ g)\subset D(f)+D(g)}.

When {V} is a topological vector space, the maps for which {D(f)} has compact closure are of particular interest: these are compact perturbations of the identity, for which degree theory can be developed. The consideration of {D(f)} makes it very clear that if {f} is an invertible compact perturbation of the identity, then {f^{-1}} is in this class as well.

It is also of interest to consider the maps for which {D(f)} is either bounded, or is bounded away from {0}. Neither case can occur for linear operators, so this is essentially nonlinear analysis. In the nonlinear case, the boundedness assumption for linear operators is usually replaced by the Lipschitz condition. Let us say that {f} is {(L, \ell)}-bi-Lipschitz if {\ell\|x-y\|\le \|f(x)-f(y)\|\le L\|x-y\|} for all {x, y} in the domain of {f}.

Brouwer’s fixed point theorem fails in infinite-dimensional Hilbert spaces, but it not yet clear how hard it can fail. The strongest possible counterexample would be a bi-Lipschitz automorphism of the unit ball with displacement bounded away from 0. The existence of such a map is unknown. If it does not exist, that would imply that the unit ball and the unit sphere in the Hilbert space are not bi-Lipschitz equivalent, because the unit sphere does have such an automorphism: {x\mapsto -x}.

Concerning the maps with bounded displacement, here is a theorem from Patrick Biermann’s thesis (Theorem 3.3.2): if {f} is an {(L, \ell)}-bi-Lipschitz map in a Hilbert space, {L/\ell < \pi/\sqrt{8}}, and {f} has bounded displacement, then {f} is onto. The importance of bounded displacement is illustrated by the forward shift map {S(x_1, x_2, \dots) = (0, x_1, x_2, \dots)} for which {L=\ell=1} but surjectivity nonetheless fails.

It would be nice to get rid of the assumption {L/\ell < \pi/\sqrt{8}} in the preceding paragraph. I guess any bi-Lipschitz map with bounded displacement should be surjective, at least in Hilbert spaces, but possibly in general Banach spaces as well.

Orthogonality in normed spaces

For a vector {x} in a normed space {X}, define the orthogonal complement {x^\perp} to be the set of all vectors {y} such that {\|x+ty\|\ge \|x\|} for all scalars {t}. In an inner product space (real or complex), this agrees with the normal definition of orthogonality because {\|x+ty\|^2 - \|x\|^2 = 2\,\mathrm{Re}\,\langle x, ty\rangle + o(t)} as {t\to 0}, and the right hand side can be nonnegative only if {\langle x, y\rangle=0}.

Let’s see what properties of orthogonal complement survive in a general normed space. For one thing, {x^\perp=X} if and only if {x=0}. Another trivial property is that {0\in x^\perp} for all {x}. More importantly, {x^\perp} is a closed set that contains some nonzero vectors.

  •  Closed because the complement is open: if {\|x+ty\| < \|x\|} for some {t}, the same will be true for vectors close to {y}.
  • Contains a nonzero vector because the Hahn-Banach theorem provides a norming functional for {x}, i.e., a unit-norm linear functional {f\in X^*} such that {f(x)=\|x\|}. Any {y\in \ker f} is orthogonal to {x}, because {\|x+ty\|\ge f(x+ty) = f(x) = \|x\|}.

In general, {x^\perp} is not a linear subspace; it need not even have empty interior. For example, consider the orthogonal complement of the first basis vector in the plane with {\ell_1} (taxicab) metric: it is \{(x, y)\colon |y|\ge |x|\}.

The orthogonal complement of a horizontal vector in the taxicab plane

This example also shows that orthogonality is not symmetric in general normed spaces: {(1,1)\in (1,0)^\perp} but {(1,0)\notin (1,1)^\perp}. This is why I avoid using notation {y \perp x} here.

In fact, {x^\perp} is the union of kernels of all norming functionals of {x}, so it is only a linear subspace when the norming functional is unique. Containment in one direction was already proved. Conversely, suppose {y\in x^\perp} and define a linear functional {f} on the span of {x,y} so that {f(ax+by) = a\|x\|}. By construction, {f} has norm 1. Its Hahn-Banach extension is a norming functional for {x} that vanishes on {y}.

Consider {X=L^p[0,1]} as an example. A function {f} satisfies {1\in f^\perp} precisely when its {p}th moment is minimal among all translates {f+c}. This means, by definition, that its “{L^p}-estimator” is zero. In the special cases {p=1,2,\infty} the {L^p} estimator is known as the median, mean, and midrange, respectively. Increasing {p} gives more influence to outliers, so {1\le p\le 2} is the more useful range for it.

Unpopular positive opinion challenge

Challenge accepted. I got three, though none are below 40%.

The Yellow Birds (2018), 45% on RT

The market isn’t so hot for Iraq war movies. And it’s nearly impossible to adapt such an introspective novel into film. I still respect the effort and its outcome, even if all references to the normal distribution got left out of it.

I spent a lot of time trying to identify the exact point at which I noticed a change in Murph, somehow thinking that if I could figure out where he had begun to slide down the curve of the bell that I could do something about it. But these are subtle shifts, and trying to distinguish them is like trying to measure the degrees of gray when evening comes. It’s impossible to identify the cause of anything, and I began to see the war as a big joke, for how cruel it was, for how desperately I wanted to measure the particulars of Murph’s new, strange behavior and trace it back to one moment, to one cause, to one thing I would not be guilty of. And I realized very suddenly one afternoon while throwing rocks into a bucket in a daze that the joke was in fact on me. Because how can you measure deviation if you don’t know the mean? There was no center in the world. The curves of all our bells were cracked.

(From The Yellow Birds by Kevin Powers)

Hearts in Atlantis (2001), 49% on RT

Two actors with (essentially) the same first name and over 50 years of age difference (Anthony Hopkins 1937-, Anton Yelchin 1989-2016) make this Stephen King adaptation well worth watching.

He made another circuit of his room, working the tingles out of his legs, feeling like a prisoner pacing his cell. The door had no lock on it—no more than his mom’s did—but he felt like a jailbird just the same. He was afraid to go out. She hadn’t called him for supper, and although he was hungry—a little, anyway—he was afraid to go out. He was afraid of how he might find her… or of not finding her at all. Suppose she had decided she’d finally had enough of Bobby-O, stupid lying little Bobby-O, his father’s son? Even if she was here, and seemingly back to normal… was there even such a thing as normal? People had terrible things behind their faces sometimes. He knew that now.

(From Low Men in Yellow Coats by Stephen King)

Maze Runner: The Death Cure (2018), 43% on RT

Sure, it’s not as good as the first film in the series (which does not qualify for the challenge, scoring 65% on RT), but a major improvement on the mindless zombie chases of the second part. I like to think of it as a parable illustrating ethical issues in public health… allowing for the customary movie-science vs actual-science differences.

Measuring nonlinearity and reducing it

How to measure the nonlinearity of a function {f\colon I\to \mathbb R} where {I\subset \mathbb R} is an interval? A natural way is to consider the smallest possible deviation from a line {y=kx+b}, that is {\inf_{k, b}\sup_{x\in I}|f(x)-kx-b|}. It turns out to be convenient to divide this by {|I|}, the length of the interval {I}. So, let {\displaystyle NL(f;I) = \frac{1}{|I|} \inf_{k, b}\sup_{x\in I}|f(x)-kx-b|}. (This is similar to β-numbers of Peter Jones, except the deviation from a line is measured only in the vertical direction.)

NL(f; I) is the maximal vertical distance between red and black, divided by the length of I

Relation with derivatives

The definition of derivative immediately implies that if {f'(a)} exists, then {NL(f;I)\to 0} as {I} shrinks to {a} (that is, gets smaller while containing {a}). A typical construction of a nowhere differentiable continuous function is based on making {NL(f;I)} bounded from below; it is enough to do this for dyadic intervals, and that can be done by adding wiggly terms like {2^{-n}\mathrm{dist}\,(x, 2^{-n}\mathbb Z)}: see the blancmange curve.

The converse is false: if {NL(f; I)\to 0} as {I} shrinks to {a}, the function {f} may still fail to be differentiable at {a}. The reason is that the affine approximation may have different slopes at different scales. An example is {f(x)=x \sin \sqrt{-\log |x|}} in a neighborhood of {0}. Consider a small interval {[-\delta, \delta]}. The line {y = kx} with {k=\sin\sqrt{-\log \delta}} is a good approximation to {f} because {f(x)/x\approx k} on most of the interval except for a very small part near {0}, and on that part {f} is very close to {0} anyway.

Why the root of logarithm? Because {\sin \log |x|} has a fixed amount of change on a fixed proportion of  {[-\delta, \delta]}, independently of {\delta}. We need a function slower than the logarithm, so that as {\delta} decreases, there is a smaller amount of change on a larger part of the interval {[-\delta, \delta]}.

Nonlinearity of Lipschitz functions

Suppose {f} is a Lipschitz function, that is, there exists a constant {L} such that {|f(x)-f(y)|\le L|x-y|} for all {x, y\in I}. It’s easy to see that {NL(f;I)\le L/2}, by taking the mid-range approximation {y=\frac12 (\max_I f + \min_I f)}. But the sharp bound is {NL(f;I)\le L/4} whose proof is not as trivial. The sharpness is shown by {f(x)=|x|} with {I=[-1,1]}.

With the maximum difference 1/2 and the length of interval 2, we get NL(f; [-1, 1]) = 1/4
Proof. Let {k} be the slope of the linear function that agrees with {f} at the endpoints of {I}. Subtracting this linear function from {f} gives us a Lipschitz function {g} such that {-L-k\le g'\le L-k} and {\int_I g'= 0}. Let {A = \int_I (g')^+ = \int_I (g')^-}. Chebyshev’s inequality gives lower bounds for the measures of the sets {g'>0} and {g'<0}: namely, {|g'>0|\ge A/(L-k)} and {|g'<0|\le A/(L+k)}. By adding these, we find that {|I| \ge 2LA/(L^2-k^2)\ge 2A/L}. Since {\max _I g - \min_I g \le A}, the mid-range approximation to {g} has error at most {A/2 \le |I|L/4}. Hence {NL(f; I) = NL(g; I) \le L/4}.

Reducing nonlinearity

Turns out, the graph of every Lipschitz function has relatively large almost-flat pieces.  That is, there are subintervals of nontrivial size where the measure of nonlinearity is much smaller than the Lipschitz constant. This result is a special (one-dimensional) case of Theorem 2.3 in Affine approximation of Lipschitz functions and nonlinear quotients by Bates, Johnson, Lindenstrauss, Preiss, and Schechtman.

Theorem AA (for “affine approximation”): For every {\epsilon>0} there exists {\delta>0} with the following property. If {f\colon I\to \mathbb R} is an {L}-Lipschitz function, then there exists an interval {J\subset I} with {|J|\ge \delta |I|} and {NL(f; J)\le \epsilon L}.

Theorem AA should not be confused with Rademacher’s theorem which says that a Lipschitz function is differentiable almost everywhere. The point here is a lower bound on the size of the interval {J}. Differentiability does not provide that. In fact, if we knew that {f} is smooth, or even a polynomial, the proof of Theorem AA would not become any easier.

Proof of Theorem AA

We may assume {I=[-1, 1]} and {L=1}. For {t\in (0, 2]} let {L(t) = \sup \{|f(x)-f(y)|/|x-y| \colon x, y\in I, \ |x-y|\ge t\}}. That is, {L(t)} is the restricted Lipschitz constant, one that applies for distances at least {t}. It is a decreasing function of {t}, and {L(0+)=1}.

Note that {|f(-1)-f(1)|\le 2L(1)} and that every value of {f} is within {2L(1)} of either {f(-1)} or {f(1)}. Hence, the oscillation of {f} on {I} is at most {6L(1)}. If {L(1) \le \epsilon/3}, then the constant mid-range approximation on {I} gives the desired conclusion, with {J=I}. From now on {L(1) > \epsilon/3}.

The sequence {L_k = L(4^{-k})} is increasing toward {L(0+)=1}, which implies {L_{k+1}\le (1+\epsilon) L_k} for some {k}. Pick an interval {[a, b]\subset I} that realizes {L_k}, that is {b-a\ge 4^{-k}} and {|f(b)-f(a)| = 4^{-k}L_k}. Without loss of generality {f(b)>f(a)} (otherwise consider {-f}). Let {J = [(3a+b)/4, (a+3b)/4]} be the middle half of {[a. b]}. Since each point of {J} is within distance {\ge 4^{-k-1}} of both {a} and {b}, it follows that {\displaystyle f(b) + L_{k+1}(x-b) \le f(x) \le f(a) + L_{k+1}(x-a) } for all {x \in J}.

The green lines have slope L_{k+1} which is close to the slope L_k of the secant line through (a, f(a)) and (b, f(b)). The graph of f is pinched between these green lines, except near a or b.

So far we have pinched {f} between two affine functions of equal slope. Let us consider their difference:
{\displaystyle (f(a) + L_{k+1}(x-a)) - (f(b) + L_{k+1}(x-b)) = (L_{k+1}-L_k) (b-a)}. Recall that {L_{k+1}\le (1+\epsilon) L_k}, which gives a bound of {\epsilon L_k(b-a) \le 2\epsilon L |J|} for the difference. Approximating {f} by the average of the two affine functions we conclude that {NL(f;J)\le \epsilon L} as required.

It remains to consider the size of {J}, about which we only know {|J|\ge 4^{-k}/2} so far. Naturally, we want to take the smallest {k} such that {L_{k+1}\le (1+\epsilon) L_k} holds. Let {m} be this value; then {L_m > (1+\epsilon)^{m} L_0}. Here {L_m\le 1} and {L_0 = L(1)> \epsilon/3 }. The conclusion is that {(1+\epsilon)^m < 3/\epsilon}, hence {m< \log(3/\epsilon)/\log(1+\epsilon)}. This finally yields {\displaystyle \delta = 4^{-\log(3/\epsilon)/\log(1+\epsilon)}/2} as an acceptable choice, completing the proof of Theorem AA.

A large amount of work has been done on quantifying {\delta} in various contexts; for example Heat flow and quantitative differentiation by Hytönen and Naor.

2019 Formula One season

This is now a separate post from Graph theory in Formula 1 so that the evolution of the graph of 1-2 finishes can be tracked. The graphs are shown as they were after the race mentioned in the subheading.



Obviously, there is only one edge after the first race of the season, a Mercedes 1-2. This turned out to be the beginning of a series of five 1-2 for Mercedes, so the graph did not change again until Monaco.

Monaco year2019

At Monaco, Mercedes drivers took “only” the first and third place, as Vettel appeared in top 2.



It began with the youngest ever front row of the F1 grid: Leclerc and Verstappen. And ended with the youngest ever 1-2 finish (represented by an edge here) in Formula One: Verstappen and Leclerc. For the moment, the graph is disconnected.

Two predictions: (1) the components will get connected; (2) the graph will stay with 5 vertices, tying the record for the fewest number of vertices (there were 5 in 2000 and 2011). Which is a way of saying, I don’t expect either Gasly or anyone outside of top 3 teams to finish in top two for the rest of the season.


The rain-induced chaos in Hockenheim could have added a third component to the graph, but instead it linked the two existing ones. The graph is now a path on 5 vertices, which is not a likely structure in this context.



Sure, the {P_5} configuration did not last. The graph is longer a tree, and nor longer bipartite.


A prediction added during the summer break: the season’s graph will contain a Hamiltonian cycle.


Getting closer to constructing a Hamiltonian cycle: only one degree-1 vertex remains. The graph is similar to 1992 season, except the appendage was one edge longer then.


In 1992, the central position was occupied by Mansell, who scored 93% more points than the runner-up to the title. This is where we find Hamilton at present, though with “only” 32% more points than the 2nd place. (The percentages are called for, because the scoring system changed in between.)


A Hamiltonian cycle is now complete. The only way to lose it is by adding another vertex to the graph, which I do not expect to happen.


The graph resembles the 2001 season where Hamilton’s position was occupied by Schumacher. The only difference is that in 2001, there was an extra edge incident to Schumacher.


We have a 4-clique, and are two edges short of the complete graph on 5 vertices.


However, I predict the complete graph will not happen. Achieving it would require two races in which neither Hamilton nor Leclerc finishes in top two. Such a thing happened just once in the first 15 races, in the chaos of rainy Hockenheim.  Not likely to happen twice in the remaining 6.


The Formula 1 graph did not change, which is not surprising, considering how unlikely the two missing edges are to appear (see above). But since Formula 3 championship ended in Sochi, here is its complete graph.


The champion, Shwartzman, has the highest vertex degree with 5. Given the level of success of Prema team, one could expect their drivers to form a 3-clique, but this is not the case: Armstrong and Daruvala are not connected (Daruvala’s successful races were mostly toward the beginning of the season, Armstrong’s toward the end). Two Hitech drivers, Vips and Pulcini, each share a couple edges with Prema drivers. All in all, this was a closely fought championship that sometimes made Formula 1 races look like parade laps in comparison.


Unlikely as it was, another edge was created, bringing the graph within one edge of the first non-planar season in F1.


Could we get an even more unlikely Verstappen-Bottas finish in the remaining four races? Red Bull did not look strong enough in recent races for that to happen.

Graph theory in Formula 1

This post attempts to visualize Formula 1 championships (1985-2018) by way of graphs: the outcome of each race is represented by an edge between the drivers who finished #1 and #2. The graph is undirected (no distinction between the winner and 2nd place is made), and simple (no record of multiple edges is kept). This erases some of the information, but depending on how much you care about F1, the graphs may still be enough to bring back some memories.

All graph-theoretical “records” are based on 1985-2018 data only, 2019 season being the subject of a separate post. Some highlights:

  • Most vertices: 12 in 1997
  • Fewest vertices: 5 in 2000 and 2011
  • Most edges: 16 in 2012
  • Fewest edges: 6 in 1988, 2002, 2011, and 2015
  • Largest maximal degree: 6 in 1990, 1997, 2004, and 2012
  • Smallest maximal degree: 3 in 1996
  • Largest minimal degree: 2 in 1989, 2016, and 2018
  • Largest diameter: 6 in 2009
  • Smallest diameter: 2 in 1993, 2000, 2001, 2002, 2007, 2011, and 2016
  • Disconnected: 1985, 1991, 1996, 1998, 1999, 2006, and 2008
  • Isomorphic seasons: 1991 and 1998
  • Hamiltonian cycle: 2016 and 2018
  • Triangle-free: none (hence no trees and no bipartite graphs)

Appropriately, both Hamiltonian cycles include Hamilton.

1985 season



This was the year of Senna’s first race victory, but the championship went to Prost, who shared maximal vertex degree (4) with Rosberg (Keke Rosberg, of course, not his son Nico Rosberg). This is also one of the few seasons with a disconnected graph. A small connected component, such as Angelis-Boutsen here, likely indicates something weird… in this case, the 1985 San Marino Grand Prix at Imola where Senna ran out of fuel and Prost was disqualified.

1986 season


Prost won again, this time with vertex degree 5.

1987 season


The four-way battle between Mansell, Piquet, Prost, and Senna fell just short of creating a complete subgraph on four vertices. Their best chance of creating {K_4} was at Detroit, where Senna won and Prost was 3rd. Piquet won the championship.

1988 season


The graph is smaller than the previous ones, but is actually larger than one would expect, considering that Senna and Prost combined for 15 wins in 16 races. Berger extended this graph by his win at Monza, in the season otherwise dominated by McLaren. The graph also suggests that Prost should win the championship, and he would have if the champion was determined by the total of all points earned as it is now. But only the best 11 results counted then, and Senna won by that metric.

1989 season


Again just an edge short of {K_4} subgraph, but this time it was not a four-way battle at all. Berger only finished 3 races (but in top two every time). Senna and Mansell also had too many retirements to challenge Prost for the championship. This is the first time we see a graph with no vertices of degree 1. But there is no Hamiltonian cycle here.

1990 season


The first time we see a degree of vertex 6, and the second time Senna is the champion.

1991 season


Another disconnected graph, with Piquet scoring his last career victory in Canada under strange circumstances: Mansell’s car stopped on the last lap when he led by almost a minute and was already waving to the crowd.

If such a mishap also happened at Silverstone, where Mansell, Berger, and Prost finished 1-2-3, we would have {K_4} as a subgraph. Senna won the championship for the last time.

1992 season


Sorry about Schumacher’s name being cut off… this was the year of his first race win, at Spa-Francorchamps. Meanwhile, Mansell utterly dominated the championship.

1993 season


The first time we get a graph of diameter 2. It suggests Hill was the winner, but in reality he finished third in the championship, with Prost winning for the last time in his career.

1994 season


The year of Senna’s death; he does not appear on the graph. Hill has the vertex degree of 5, but Schumacher won the championship by 1 point after their controversial collision at Adelaide.

1995 season


That’s pretty close to the wheel graph on six vertices – the only missing edge is Häkkinen-Coulthard. They would score a lot of 1-2 finishes for McLaren in the years to come, but at this time they were not teammates yet. At the center of the incomplete wheel, Schumacher won the championship by a wide margin.

1996 season


Another small component, another highly unusual race: wet Monaco Grand Prix, where only three cars made it to the finish and Panis scored the only victory of his career.

Hill won the championship in which no driver had vertex degree greater than 3, the only such season in our record.

1997 season


This season holds the record for the number of vertices (12). Two vertices have degree 6 (Villeneuve and Schumacher) but surprisingly, there is no edge between them. Although one of them was on the podium in every race except Italy, they were never on the podium together. Their infamous collision in the season finale at Jerez led to Schumacher being disqualified from the championship.

Villeneuve became the last non-European F1 champion to date.

1998 season


The small component is due to Carmageddon on the first lap of very wet Belgian Grand Prix.

This is where my decision to include only driver’s last names backfires: Ralf Schumacher gets to keep his initial. In other news, Williams suddenly faded from the picture and McLaren re-emerged with Häkkinen and Coulthard finishing 1-2 in five races. Häkkinen won the championship.

The seasons 1991 and 1998 is the only pair of isomorphic graphs in this collection. An isomorphism maps Schumacher and Häkkinen to Senna and Mansell.

1999 season


The small component is contributed by the partially wet Nürburgring race, where multiple retirements among the leaders left Herbert to score his last Grand Prix victory.

Schumacher’s injury at Silverstone took him out of contention. Still, the second championship of Häkkinen was a lot closer than the first one: he won by 2 points over Irvine.

2000 season


Finally, we get a complete subgraph on four vertices: the Ferrari and McLaren drivers. The sole appearance of a driver outside of these two teams was at Brazilian Grand Prix, where Fisichella finished 3rd but was promoted to 2nd after Coulthard’s disqualification. If not for this incident, we would have a regular graph in this collection, a rather unlikely event. Even so, this season set the record for fewest vertices (5). A closely fought championship ended with Schumacher collecting his third title.

2001 season


This was not close at all: the driver at the center of this diameter 2 graph won with a lot of room to spare.

2002 season


Another season of diameter 2. Schumacher finished every race in top two, except for the Malaysian Grand Prix, narrowly missing an opportunity to create a tree (a star graph). This season ties the fewest edges record (6) which was set in 1998.

2003 season


More vertices and larger diameter indicates a more interesting season. Schumacher won again, but by mere 2 points over Räikkönen.

2004 season


The final season of Schumacher/Ferrari dominance, in which Schumacher won 13 races and achieved the vertex degree of 6.

2005 season


This looks like it was between Alonso and Räikkönen – and it was, with Alonso becoming the youngest F1 champion yet.

2006 season


Button’s first career win (wet Hungarian Grand Prix) created the small component.

The large component has diameter 2, with Alonso (the champion) in its center. This is also the last graph in which Schumacher appears.

2007 season


As in 2000, Ferrari and McLaren combine to form a complete subgraph on four vertices. But this championship fight was as close as one could imagine, with three drivers finishing within one point: Räikkönen 110, Hamilton 109, Alonso 109. And this was Hamilton’s first season in F1.

2008 season


For the first time, we have a small component with more than two vertices. Kovalainen’s only F1 victory came in Hungary, where Glock took second place. More notable was Vettel’s first victory, which came in Monza and made him the youngest driver to win a F1 race [up to that time]. Even more notably, Hamilton won the championship by one point, at the end of the final lap of the final race, and became the youngest F1 champion at that time. Here is the Glock’s view of the action, his car slip-sliding on dry-weather tyres.

On the graph, “Jr.” is Piquet Jr. who took second place in Germany but his brief stint in Formula 1 would be remembered for an entirely different reason.


2009 season


The graph of largest diameter (6) captures a strange season after major rule changes. It is so close to being a complex tree, but the 3-cycle was completed at Istanbul, where the polesitter Vettel lost the lead on the first lap and then fell behind his Red Bull teammate Webber as well, finishing just 0.7 seconds behind in the 3rd place. If Vettel was first or second in Turkey, we would have a tree. Button won the championship on the strength of the first half of the season.

2010 season


The third time we see a {K_4} subgraph, but the first time that it involves more than two teams: the vertices come from Red Bull (Vettel and Webber), McLaren (Hamilton), and Ferrari (Alonso). Although Vettel’s vertex degree is only 3, trailing Hamilton’s 4 and Alonso’s 5, he became the youngest F1 champion in history, a record he still holds.

2011 season


The season tied 2000 for the fewest vertices, with 5. The fewest edges record (6) is tied as well: it was McLaren in 1988 and Ferrari in 2002; this time it is Red Bull’s turn. Vettel won the championship by 122 points but it’s not all in the car; his teammate Webber finished only third.

2012 season


With 16 edges, this season beat the previous record set by 1997 season, even though there are fewer vertices here. The two degree-6 vertices led the way in the championship, with Vettel beating Alonso by 3 points. Was this the last great season to watch?

2013 season


Vettel over Alonso again, but by 155 points this time. This was the last season of V8 engines, and last season of Red Bull domination. Hamilton appears on the graph only because of his victory in Hungary, after which Vettel won the remaining 9 races. The season opener turned out to be the last race [at the time of writing] won by someone not driving Mercedes, Ferrari, or Red Bull:

2014 season


The beginning of a new era: V6 hybrid engine, Mercedes, and Hamilton. Also the last time we see a McLaren driver (Magnussen) on the graph: he appears because of the 2nd place in the dramatic season opener.

In a brief moment of Williams resurgence, Bottas took 2nd place in Britain and Germany, forming a cycle with the Mercedes drivers. If not for him, we would have a tree.

2015 season


Another 6-edge graph, another season without much competition. Vettel was the only driver to challenge Mercedes on occasions, thus contributing a cycle to the graph. The entire graph is formed by Mercedes, Ferrari, and Red Bull. Hamilton won the championship again.

2016 season


The first time we get a Hamiltonian cycle, for example: Hamilton, Vettel, Rosberg, Räikkönen, Verstappen, Ricciardo, and back to Hamilton. Another 6-vertex graph formed by Mercedes, Ferrari, and Red Bull exclusively. Among them, Mercedes and Red Bull drivers form a complete subgraph. With Ferrari fading to third, neither Vettel nor Räikkönen had enough success to extend {K_4} to {K_5} and thus create the first non-planar season. We would have {K_5} if (a) Räikkönen overtook Verstappen in Austria (he was 0.3s behind), after Hamilton and Rosberg collided on the last lap:

and (b) Räikkönen finished 2nd instead of the 4th in Malaysia, where Hamilton’s engine went up in smoke, costing him the championship.

As it happened, we did not get {K_5} and Hamilton did not get the championship, which went to Rosberg instead. But Verstappen got his first victory at Barcelona and still remains the youngest driver ever to win an F1 race.

2017 season


Once again, it is all about Mercedes, Ferrari, and Red Bull, with the Mercedes drivers enjoying higher vertex degree. But this time Ferrari drivers are connected by an edge. The last 1-2 finish of Ferrari to date was in Hungary, arguably their high point of the season.

It was all about Hamilton the rest of the season.

2018 season


Second time a Hamiltonian cycle appears, for example: Hamilton, Räikkönen, Verstappen, Vettel, Ricciardo, Bottas, and back to Hamilton. Fourth year in a row that only Mercedes, Ferrari, and Red Bull drivers appear on the graph. Second year in a row that Hamilton wins, and his fifth time overall.