Cayley–Menger determinant

In linear algebra, geometry, and trigonometry, the Cayley–Menger determinant is a formula for the content, i.e. the higher-dimensional volume, of a $n$ -dimensional simplex in terms of the squares of all of the distances between pairs of its vertices. The determinant is named after Arthur Cayley and Karl Menger.

The $${n \choose 2}$$ pairwise distance polynomials between n points in a real Euclidean space are Euclidean invariants that are associated via the Cayley-Menger relations. These relations served multiple purposes such as generalising Heron's Formula, computing the content of a n-dimensional simplex, and ultimately determining if any real symmetric matrix is a Euclidean distance matrix in the field of Distance geometry.

History
Karl Menger was a young geometry professor at the University of Vienna and Arthur Cayley was a British mathematician who specialized in algebraic geometry. Menger extended Cayley's algebraic excellence to propose a new axiom of metric spaces using the concepts of distance geometry and relation of congruence, known as the Cayley–Menger determinant. This ended up generalising one of the first discoveries in distance geometry, Heron's formula, which computes the area of a triangle given its side lengths.

Definition
Let $A_0, A_1,\ldots, A_n$ be $$n+1$$ points in $$k $$-dimensional Euclidean space, with $$k \ge n$$. These points are the vertices of an n-dimensional simplex: a triangle when $$n = 2$$; a tetrahedron when $$n = 3$$, and so on. Let $d_{ij}$ be the Euclidean distances between vertices $$A_i$$ and $A_j$. The content, i.e. the n-dimensional volume of this simplex, denoted by $$v_n$$, can be expressed as a function of determinants of certain matrices, as follows:



\begin{align} v_n^2 & = \frac{1}{(n!)^2 2^n} \begin{vmatrix} 2d_{01}^2 & d_{01}^2 + d_{02}^2 - d_{12}^2 & \cdots & d_{01}^2 + d_{0n}^2 - d_{1n}^2 \\ d_{01}^2 + d_{02}^2 - d_{12}^2 & 2d_{02}^2 & \cdots & d_{02}^2 + d_{0n}^2 - d_{2n}^2 \\ \vdots & \vdots & \ddots & \vdots \\ d_{01}^2 + d_{0n}^2 - d_{1n}^2 & d_{02}^2 + d_{0n}^2 - d_{2n}^2 & \cdots & 2d_{0n}^2 \end{vmatrix} \\[10pt] & = \frac{(-1)^{n+1}}{(n!)^2 2^n} \begin{vmatrix} 0 & d_{01}^2 & d_{02}^2 & \cdots & d_{0n}^2 & 1 \\ d_{01}^2 & 0 & d_{12}^2 & \cdots & d_{1n}^2 & 1 \\ d_{02}^2 & d_{12}^2 & 0 & \cdots & d_{2n}^2 & 1 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ d_{0n}^2 & d_{1n}^2 & d_{2n}^2 & \cdots & 0 & 1 \\ 1 & 1 & 1 & \cdots & 1 & 0 \end{vmatrix}. \end{align} $$

This is the Cayley–Menger determinant. For $$n=2$$ it is a symmetric polynomial in the $$d_{ij} $$'s and is thus invariant under permutation of these quantities. This fails for $$n>2,$$ but it is always invariant under permutation of the vertices.

Except for the final row and column of 1s, the matrix in the second form of this equation is a Euclidean distance matrix.

2-Simplex
To reiterate, a simplex is an n-dimensional polytope and the convex hull of $$n+1$$ points which do not lie in any $$(n-1)$$ dimensional plane. Therefore, a 2-simplex occurs when $$n=2$$ and the simplex results in a triangle. Therefore, the formula for determining $$V_j^2$$ of a triangle is provided below:

$$-16\Delta^2 = \begin{vmatrix} 0 & 1 & 1 & 1\\ 1 & 0 & c^2 & b^2\\ 1 & c^2 & 0 & a^2\\ 1 & b^2 & a^2 & 0\\ \end{vmatrix} $$

As a result, the equation above presents the content of a 2-simplex (area of a planar triangle with side lengths $$a$$, $$b$$, and $$c$$) and it is a generalised form of Heron's Formula.

3-Simplex
Similarly, a 3-simplex occurs when $$n=3$$ and the simplex results in a tetrahedron. Therefore, the formula for determining $$V_j^2$$ of a tetrahedron is provided below:

$$288 V^2 = \begin{vmatrix} 0 & 1 & 1 & 1 & 1\\ 1 & 0 & d_{12}^2 & d_{13}^2 & d_{14}^2\\ 1 & d_{21}^2 & 0 & d_{23}^2 & d_{24}^2\\ 1 & d_{31}^2 & d_{32}^2 & 0 & d_{34}^2\\ 1 & d_{41}^2 & d_{42}^2 & d_{43}^2 & 0\\ \end{vmatrix} $$

As a result, the equation above presents the content of a 3-simplex, which is the volume of a tetrahedron where the edge between vertices $$i$$ and $$j$$ has length $$d_{ij}$$.

Proof
Let the column vectors $A_0, A_1,\ldots, A_n$ be $$n+1$$ points in $$n$$-dimensional Euclidean space. Starting with the volume formula
 * $$v_n = \frac{1}{n!} \left| \det \begin{pmatrix}

A_0 & A_1 & \cdots & A_n \\ 1 &  1  & \cdots &  1 \end{pmatrix} \right|\,,$$ we note that the determinant is unchanged when we add an extra row and column to make an $$(n+2)\times(n+2)$$ matrix,
 * $$P = \begin{pmatrix}

A_0 & A_1 & \cdots & A_n & 0 \\ 1 &  1  & \cdots &  1  & 0 \\ \|A_0\|^2 & \|A_1\|^2 & \cdots & \|A_n\|^2 & 1 \end{pmatrix}\,,$$ where $$\|A_j\|^2$$ is the square of the length of the vector $$A_j$$. Additionally, we note that the $$(n+2)\times(n+2)$$ matrix
 * $$Q = \begin{pmatrix}

-2 & 0 & \cdots & 0 & 0 & 0 \\ 0 & -2 & \cdots & 0 & 0 & 0 \\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\ 0 & 0 & \cdots & -2 & 0 & 0 \\ 0 & 0 & \cdots & 0 & 0 & 1 \\ 0 & 0 & \cdots & 0 & 1 & 0 \end{pmatrix}$$ has a determinant of $$(-2)^n(-1) = (-1)^{n+1} 2^n$$. Thus,
 * $$\det \begin{pmatrix}

0 & d_{01}^2 & d_{02}^2 & \cdots & d_{0n}^2 & 1 \\ d_{01}^2 & 0 & d_{12}^2 & \cdots & d_{1n}^2 & 1 \\ d_{02}^2 & d_{12}^2 & 0 & \cdots & d_{2n}^2 & 1 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ d_{0n}^2 & d_{1n}^2 & d_{2n}^2 & \cdots & 0 & 1 \\ 1 & 1 & 1 & \cdots & 1 & 0 \end{pmatrix} = \det(P^T Q P) = \det(Q) \det(P)^2 = (-1)^{n+1} 2^n (n!)^2 v_n^2\,.$$

Example
In the case of $$n = 2 $$, we have that $$v_2 $$ is the area of a triangle and thus we will denote this by $$A $$. By the Cayley–Menger determinant, where the triangle has side lengths $$a$$, $$b$$ and $$c$$,


 * $$\begin{align}

16A^2 &= \begin{vmatrix} 2a^2 & a^2+b^2-c^2 \\ a^2+b^2-c^2 & 2b^2 \end{vmatrix} \\[8pt] &= 4a^2b^2 - (a^2+b^2-c^2)^2 \\[6pt] &= (a^2+b^2+c^2)^2 - 2(a^4+b^4+c^4) \\[6pt] &= (a+b+c)(a+b-c)(a-b+c)(-a+b+c) \end{align}$$

The result in the third line is due to the Fibonacci identity. The final line can be rewritten to obtain Heron's formula for the area of a triangle given three sides, which was known to Archimedes prior.

In the case of $$n=3$$, the quantity $$v_3$$ gives the volume of a tetrahedron, which we will denote by $$V$$. For distances between $$A_i$$ and $$A_j$$ given by $$d_{ij}$$, the Cayley–Menger determinant gives


 * $$\begin{align}

144V^2 = {} & \frac{1}{2} \begin{vmatrix} 2d_{01}^2 & d_{01}^2+d_{02}^2-d_{12}^2 & d_{01}^2+d_{03}^2-d_{13}^2 \\ d_{01}^2+d_{02}^2-d_{12}^2 & 2d_{02}^2 & d_{02}^2+d_{03}^2-d_{23}^2 \\ d_{01}^2+d_{03}^2-d_{13}^2 & d_{02}^2+d_{03}^2-d_{23}^2 & 2d_{03}^2 \end{vmatrix} \\[8pt] = {} & 4d_{01}^2 d_{02}^2 d_{03}^2 + (d_{01}^2+d_{02}^2-d_{12}^2)(d_{01}^2+d_{03}^2-d_{13}^2)(d_{02}^2+d_{03}^2-d_{23}^2) \\[6pt] & {} -d_{01}^2(d_{02}^2+d_{03}^2-d_{23}^2)^2 - d_{02}^2(d_{01}^2+d_{03}^2-d_{13}^2)^2 - d_{03}^2(d_{01}^2+d_{02}^2-d_{12}^2)^2. \end{align}$$

Finding the circumradius of a simplex
Given a nondegenerate n-simplex, it has a circumscribed n-sphere, with radius $$r$$. Then the (n + 1)-simplex made of the vertices of the n-simplex and the center of the n-sphere is degenerate. Thus, we have



\begin{vmatrix} 0 & r^2 & r^2 & r^2 & \cdots & r^2 & 1 \\ r^2 & 0 & d_{01}^2 & d_{02}^2 & \cdots & d_{0n}^2 & 1 \\ r^2 & d_{01}^2 & 0 & d_{12}^2 & \cdots & d_{1n}^2 & 1 \\ r^2 & d_{02}^2 & d_{12}^2 & 0 & \cdots & d_{2n}^2 & 1 \\ \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ r^2 & d_{0n}^2 & d_{1n}^2 & d_{2n}^2 & \cdots & 0 & 1 \\ 1 & 1 & 1 & 1 & \cdots & 1 & 0 \end{vmatrix} = 0 $$

In particular, when $$ n = 2 $$, this gives the circumradius of a triangle in terms of its edge lengths.

Set Classifications
From these determinants, we also have the following classifications:

Straight
A set Λ (with at least three distinct elements) is called straight if and only if, for any three elements A, B, and C of Λ,


 * $$ \det \begin{bmatrix}

0 & d(AB)^2 & d(AC)^2 & 1 \\ d(AB)^2 &   0    & d(BC)^2 & 1 \\ d(AC)^2 & d(BC)^2 &      0 & 1 \\ 1 &      1 &       1 & 0 \end{bmatrix} = 0 $$

Plane
A set Π (with at least four distinct elements) is called plane if and only if, for any four elements A, B, C and D of Π,


 * $$ \det \begin{bmatrix}

0 & d(AB)^2 & d(AC)^2 & d(AD)^2 & 1 \\ d(AB)^2 &   0    & d(BC)^2 & d(BD)^2 & 1 \\ d(AC)^2 & d(BC)^2 &      0 & d(CD)^2 & 1 \\ d(AD)^2 & d(BD)^2 & d(CD)^2 &      0 & 1 \\ 1 &      1 &       1 & 1       & 0 \end{bmatrix} = 0 $$ but not all triples of elements of Π are straight to each other;

Flat
A set Φ (with at least five distinct elements) is called flat if and only if, for any five elements A, B, C, D and E of Φ,


 * $$ \det \begin{bmatrix}

0 & d(AB)^2 & d(AC)^2 & d(AD)^2 & d(AE)^2 & 1 \\ d(AB)^2 &   0    & d(BC)^2 & d(BD)^2 & d(BE)^2 & 1 \\ d(AC)^2 & d(BC)^2 &      0 & d(CD)^2 & d(CE)^2 & 1 \\ d(AD)^2 & d(BD)^2 & d(CD)^2 &      0 & d(DE)^2 & 1 \\ d(AE)^2 & d(BE)^2 & d(CE)^2 & d(DE)^2 &      0 & 1 \\ 1 &      1 &       1 & 1       &       1 & 0 \end{bmatrix} = 0 $$

but not all quadruples of elements of Φ are plane to each other; and so on.

Menger's Theorem
Karl Menger made a further discovery after the development of the Cayley–Menger determinant, which became known as Menger's Theorem. The theorem states:


 * A semimetric $$\rho: A \times A \rightarrow \mathbb{R}_{\geq0}$$ is Euclidean of dimension n if and only if all Cayley-Menger determinants on $$n+1$$ points is strictly positive, all determinants on $$n+2$$ points vanish, and a Cayley-Menger determinant on at least one set of $$n+3$$ points is nonnegative (in which case it is necessarily zero).

In simpler terms, if every subset of $$n+2$$ points can be isometrically embedded in an $$n-$$ but not generally $$(n-1)-$$dimensional Euclidean space, then the semimetric is Euclidean of dimension $$n$$ unless $$A$$ consists of exactly $$n+3$$ points and the Cayley–Menger determinant on those $$n+3$$ points is strictly negative. This type of semimetric would be classified pseudo-Euclidean.

Realization of a Euclidean distance matrix
Given the Cayley-Menger relations as explained above, the following section will bring forth two algorithms to decide whether a given matrix is a distance matrix corresponding to a Euclidean point set. The first algorithm will do so when given a matrix AND the dimension, $$d$$, via a geometric constraint solving algorithm. The second algorithm does so when the dimension, $$d$$, is not provided. This algorithm theoretically finds a realization of the full $$n \times n$$ Euclidean distance matrix in the smallest possible embedding dimension in quadratic time.

Theorem (d is given)
For the sake and context of the following theorem, algorithm, and example, slightly different notation will be used than before resulting in an altered formula for the volume of the $$ n-1 $$ dimensional simplex below than above.


 * Theorem. An $$ n \times n $$ matrix $$ \Delta $$ is a Euclidean Distance Matrix if and only if for all $$ k \times k $$ submatrices $$ S $$ of $$ \Delta $$, where $$ k \leq n $$, $$ \det (\hat{\delta _S}) \geq 0 $$. For $$ \Delta $$ to have a realization in dimension $$ d $$, if $$ |S| = k \geq d + 2 $$, then $$ \det (\hat{\delta _S}) = 0 $$.

As stated before, the purpose to this theorem comes from the following algorithm for realizing a Euclidean Distance Matrix or a Gramian Matrix.

Algorithm

 * Input
 * Euclidean Distance Matrix $$ \Delta $$ or Gramian Matrix $$ \Gamma $$.


 * Output
 * Pointset $$ P $$


 * Procedure


 * If the dimension $$ d $$ is fixed, we can solve a system of polynomial equations, one for each inner product entry of $$ \Gamma $$, where the variables are the coordinates of each point $$ p_1, ..., p_n $$ in the desired dimension $$d$$.
 * Otherwise, we can solve for one point at a time.
 * Solve for the coordinates of $$ p_k $$ using its distances to all previously placed points $$ p_1, ..., p_{k-1} $$. Thus, $$ p_k $$ is represented by at most $$ k - 1 $$ coordinate values, ensuring minimum dimension and complexity.

Example
Let each point $$ p_k $$ have coordinates $$ {p^1_k, p^2_k, ...} $$. To place the first three points:


 * 1) Put $$ p_1 $$ at the origin, so $$ p_1 = {0,0,...} $$.
 * 2) Put $$ p_2 $$ on the first axis, so $$ p_2 = {(\delta_{12})^2, 0, ...} $$.
 * 3) To place $$ p_3 $$:

$$ \begin{cases} (p^1_1 - p^1_3)^2 + (p^2_1 - p^2_3)^2 = (\delta_{13})^2\\ (p^1_2 - p^1_3)^2 + (p^2_2 - p^2_3)^2 = (\delta_{23})^2 \end{cases} $$ $$ \rightarrow \begin{cases} p^1_3 = \frac{(\delta_{12})^2 + (\delta_{13})^2 - (\delta_{23})^2}{2 \delta_{12}}\\ p^2_3 = \frac{\sqrt{(\delta_{31} + \delta_{32} + \delta_{12})(\delta_{31} + \delta_{32} - \delta_{12})(\delta_{31} - \delta_{32} + \delta_{12})(- \delta_{31} + \delta_{32} + \delta_{12})}}{2 \delta_{01}} \end{cases} $$

In order to find a realization using the above algorithm, the discriminant of the distance quadratic system must be positive, which is equivalent to $$ \Delta p_1p_2p_3 $$ having positive volume. In general, the volume of the $$ n-1 $$ dimensional simplex formed by the $$ n $$ vertices is given by

$$ V^{2}_{n-1} = \frac{(-1)^{n}}{2^{n-1} (n-1!)^{2}} \det (\hat{\Delta}) $$.

In this formula above, $$\det (\hat{\Delta}) $$ is the Cayley–Menger determinant. This volume being positive is equivalent to the determinant of the volume matrix being positive.

Theorem (d not given)
Let K be a positive integer and D be a n × n symmetric hollow matrix with nonnegative elements, with n ≥ 2. D is a Euclidean distance matrix with dim(D) = K if and only if there exist $$\{x_i\}_{i=1}^n \subseteq \mathbb{R}^K$$ and an index set I = $$\{i_1,...,i_{K+1}\} \subseteq I_n $$ such that


 * $$\begin{cases}

x_i = 0 \\ x_{i_j} (j -1) \ne 0, & \mbox{ }  j \in I_{2,K+1} \\ x_{i_j} (i) = 0, & \mbox{ }  j \in I_{2,K}, i \in I_{j,K},

\end{cases} $$

where $$\{x_i\}_{i=1}^n$$ realizes D, where $$x_h(l)$$ denotes the $$l^{th}$$ component of the $$h^{th}$$ vector. The extensive proof of this theorem can be found at the following reference.

Algorithm - K = edmsph(D, x)
Source:

$$I = \{1,2\}$$ $$K = 1$$ $$(x_1, x_2) = (0, \sqrt{D_{12}})$$ $$\text{for i} \in \{3,...,n\}\text{ do}$$


 * Γ $$ = \bigcap_{j \in I} S^K(x_j, D_{ij})$$
 * if Γ $$ = $$ ∅; then
 * return ∞
 * else if Γ $$ = \{p_i\} \text{ } then $$
 * $$x_i = p_i $$
 * else if Γ$$ = \{p_i^+, p_i^-\} \text{ } then $$
 * $$ x_i = p_i^+ $$
 * $$x$$ ← expand($$x$$)
 * I ← I ∪ {i}
 * K ← K + 1
 * else
 * error: dim aff(span($$x_j$$)) < K - 1
 * end if

end for return K