1 Background and Introduction

The intuitions which inspired Hermann Günther Grassmann to invent the inner and outer products of vectors and points are seldom emphasized in modern presentations of geometric algebra (for relevant discussions, see Refs. [5, 9,10,11, 15, 17]). This is unfortunate because they still have something to offer, both pedagogically and as a source of inspiration for its applications and further developments. I recently had the rare pleasure of experiencing some of Grassmann’s spirit in the course of discovering a natural extension of Heron’s formula to the tetrahedron [14], and envisioning how those same geometric principles can be applied in higher dimensions. The algebra was tough going, but the payoff was in the geometric insights it led to.

In order to emphasize the elementary nature of those results and render them accessible to the widest possible audience, I eschewed the use of modern geometric algebra in my earlier papers on the tetrahedron and confined myself to the better-known vector algebra of Gibbs and Heaviside [14]. Nevertheless, the full power of geometric algebra is needed to build upon the geometric insights obtained in three dimensions in order to extend Heron’s formula to yet higher dimensions. We shall see that the algebraic framework obtained by applying geometric algebra to the conformal model of Euclidean geometry unites and codifies Grassmann’s original geometric intuitions in an eminently satisfactory fashion.Footnote 1

Accordingly, the first three sections of this paper use conformal geometric algebra to derive the relevant algebraic relations, which always boil down to scalar equations, among the invariants that connect various covariant multi-vector quantities of increasing grades in the conformal model. These algebraic relations are then used to give a new derivation of Heron’s formula for triangles, followed by its extension to tetrahedra. The paper closes by using the geometric insights thereby obtained to outline a proof of my previously conjectured [14, Part II] extension of the formula to higher dimensions.

2 Barycentric Sums in the Conformal Model

One curious feature of the conformal model in \(\mathcal G_{4,1}\) is that, although it contains the 4-dimensional homogeneous (projective) model as a subspace, barycentric sums in that subspace do not correspond to weighted sums of the corresponding conformal points.Footnote 2 This is because a naive barycentric sum of conformal points \(\varvec{a} = \varvec{n}_0 + \textbf{a}+ \varvec{n}_\infty \, \textbf{a}^2 / 2\), \(\varvec{b} = \varvec{n}_0 + \textbf{b}+ \varvec{n}_\infty \, \textbf{b}^2 / 2\) (\(\varvec{n}_0^2 = \varvec{n}_\infty ^2 = 0\), \(\varvec{n}_0 {\,\varvec{\cdot }\,}\varvec{n}_\infty = -1\), \(\textbf{a}, \textbf{b}\in \mathbb R^3\)) is not itself null vector:

$$\begin{aligned} (\beta _\mathsf a\, \varvec{a} + \beta _\mathsf b\, \varvec{b} )^2 ~=~ 2\, \beta _\mathsf a \beta _\mathsf b\, \varvec{a} \,{\varvec{\cdot }}\, \varvec{b} ~=~ -\beta _\mathsf a \beta _\mathsf b\, \Vert \textbf{a}- \textbf{b}\Vert ^2 \qquad \big ( \beta _\mathsf a \!+\! \beta _\mathsf b = 1 \big ) \end{aligned}$$
(1)

Instead a non-linear correction term has to be added on, specifically:

$$\begin{aligned} \begin{aligned} \beta _\mathsf a\, \varvec{a} + \beta _\mathsf b\, \varvec{b} \,+\, \beta _\mathsf a \beta _\mathsf b\, \varvec{a} {\,\varvec{\cdot }\,}\varvec{b}\, \varvec{n}_\infty ~=~ \varvec{n}_0 \,+\, \beta _\mathsf a\, {\textbf {a}}+ \beta _\mathsf b\, {\textbf {b}}\,+\, \tfrac{1}{2}\, \Vert \beta _\mathsf a\, {\textbf {a}}+ \beta _\mathsf b\, {\textbf {b}}\Vert ^2\, \varvec{n}_\infty \end{aligned} \end{aligned}$$
(2)

For a general indexed sum \(\sum _{i=1}^N \beta _i\, \varvec{a}_i\) of points with \(\sum _{i=1}^N \beta _i = 1\), the corresponding formula is:

$$\begin{aligned} \begin{aligned} \sum _{i=1}^N\, \beta _i\, \varvec{a}_i \,+\, \varvec{n}_\infty \! \sum _{j>i=1}^N \beta _i \beta _j\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j ~=~ \varvec{n}_0 \,+\, \sum _{i=1}^N\, \beta _i\, {\textbf {a}}_i \,+\, \frac{1}{2}\, \Bigg \Vert \sum _{i=1}^N\, \beta _i\, {\textbf {a}}_i \Bigg \Vert ^2 \varvec{n}_\infty \end{aligned} \end{aligned}$$
(3)

Far from being an encumbrance, this correction term contains valuable metrical information. For example, if \(\varvec{b}\) is such a corrected barycentric sum over a set of conformal points \(\{ \varvec{a}_i \}\), we can easily derive Lagrange’s first identity [12] for the radius of gyration about the barycenter \({\textbf {b}}\,{:}{=}\,\sum _i \beta _i\, {\textbf {a}}_i\) thereof as follows:

$$\begin{aligned} \begin{aligned} 0 ~=~ \varvec{b}^2 ~=~&\> \varvec{b} {\,\varvec{\cdot }\,}\Big ( \textstyle {\sum }_i\, \beta _i\, \varvec{a}_i \,+\, \varvec{n}_\infty \, \textstyle {\sum }_{j>i}\, \beta _i \beta _j\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j \Big ) \\ =~&\> \textstyle {\sum }_i\, \beta _i\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{b} \,-\, \textstyle {\sum }_{j>i}\, \beta _i \beta _j\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j \\ {}&{}\hspace{-7.5em} \Longrightarrow \quad \textstyle {\sum }_i\, \beta _i\, \Vert {\textbf {a}}_i - {\textbf {b}} \Vert ^2 ~=~ \textstyle {\sum }_{j>i}\, \beta _i \beta _j\, \Vert {\textbf {a}}_i - {\textbf {a}}_j \Vert ^2 \end{aligned} \end{aligned}$$
(4)

We can also derive Lagrange’s second identity, which connects these distances with those to an arbitrary third point \(\varvec{c}\), namely:

$$\begin{aligned} \begin{aligned} \varvec{c} {\,\varvec{\cdot }\,}\varvec{b} \!\!&\;~=~ \textstyle {\sum }_i\, \beta _i\, \varvec{c} {\,\varvec{\cdot }\,} \varvec{a}_i \,+\, \varvec{c} {\,\varvec{\cdot }\,}\varvec{n}_\infty \, \textstyle {\sum }_{j>i}\, \beta _i \beta _j\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j \\ \implies \quad \textstyle {\sum }_i\,&\beta _i\, \Vert {\textbf {a}}_i - {\textbf {c}}\Vert ^2 ~=~ \Vert {\textbf {b}}- {\textbf {c}}\Vert ^2 \,+\, \textstyle {\sum }_{j>i}\, \beta _i \beta _j\, \Vert {\textbf {a}}_i - {\textbf {a}}_j \Vert ^2 \end{aligned} \end{aligned}$$
(5)

Lagrange’s identities in turn imply the Huygens-Leibniz identity which (given \(\sum _i \beta _i = 1\) and letting \({\textbf {c}} \,{:}{=}\, {\textbf {a}}_j\) for \(j = 1, \ldots , N\)) allows the barycentric coordinates \(\{ \beta _i \}\) of \(\textbf{b}\) to be computed from the distances among the points \(\{ \textbf{b}, \textbf{a}_i \}\):

$$\begin{aligned} \textstyle {\sum }_i\, \beta _i\, \Vert \textbf{a}_i - \textbf{c}\Vert ^2 ~=~ \Vert \textbf{b}- \textbf{c}\Vert ^2 \,+\, \textstyle {\sum }_i\, \beta _i\, \Vert \textbf{a}_i - \textbf{b}\Vert ^2 \end{aligned}$$
(6)

If we are given a second barycentric sum \(\textbf{b}' = \sum _i \beta _i'\, \textbf{a}_i\), the squared distance between the two is

(7)

but since \(\varvec{n}_\infty {\,\varvec{\cdot }\,}\varvec{a}_k = -1\) for all k and \(\sum _k \beta _k' = 1\), we also have

$$\begin{aligned} \begin{aligned} \varvec{b} {\,\varvec{\cdot }\,}\textstyle {\sum }_j\, \beta _j'\, \varvec{a}_j{}&{} =~ \textstyle {\sum }_{i,j\,} \beta _i \beta _j'\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j \,+\, \big ( \textstyle {\sum }_{j>i\,} {}{} \beta _i \beta _j\, \varvec{a}_i {\,\varvec{\cdot }\,} \varvec{a}_j \big ) \big ( \textstyle {\sum }_{k\,} \beta _k'\, \varvec{n}_\infty {\,\varvec{\cdot }\,}\varvec{a}_k \big ) \\{}&{} =~ \textstyle {\sum }_{i,j}\, (\beta _i \beta _j' \,-\, \tfrac{1}{2}\, \beta _i \beta _j)\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j ~. \end{aligned}\end{aligned}$$
(8)

Together with Eq. (7), this yields:

$$\begin{aligned}{} & {} \Vert \textbf{b}- \textbf{b}' \Vert ^2 \, = {}\,\> \textstyle {\sum }_{i,j}\, ( -{}2\, \beta _i \beta _j' \,+\, \beta _i \beta _j \,+\, \beta _i' \beta _j' \,)\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j ~= \nonumber \\ {}{} & {} \quad \textstyle {\sum }_{i,j} (\beta _i - \beta _i') (\beta _j - \beta _j')\, \varvec{a}_i {\,\varvec{\cdot }\,}\varvec{a}_j = -\tfrac{1}{2}\, \textstyle {\sum }_{i,j} (\beta _i - \beta _i') (\beta _j - \beta _j')\, \Vert {\textbf {a}}_i - {\textbf {a}}_j \Vert ^2 \end{aligned}$$
(9)

This last expression is known as Schönberg’s quadratic form [4]. It is well known that it is non-negative for all values of the variables \(\delta _i = \beta _i - \beta _i'\) with \(\sum _i \delta _i = 0\) if and only if the coefficients \( \Vert \textbf{a}_i - \textbf{a}_j \Vert ^2\) are indeed the squared distances among a system of points in Euclidean space. Its geometric interpretation as the squared Euclidean norm of an affine sum,Footnote 3 which is itself just a squared distance, shows very clearly why this is so.

A special class of particular interest occurs when the barycentric coefficients \(\beta _i\), \(\beta _j'\) vanish except on subsets \(\mathrm B\), \(\mathrm B'\) \(\subseteq \) \(\mathrm A {:}{=}\{ 1,\, \ldots \,, N \}\) of sizes \(| \mathrm B |\), \(| \mathrm B' |\), and \(\beta _i = |\mathrm B|^{-1}\), \(\beta _j' = |\mathrm B'|^{-1}\) for all \(i \in \mathrm B\), \(j \in \mathrm B'\) respectively. This results in a formula for the squared distance between the centroids \(\textbf{b}= |\mathrm B|^{-1} \sum _i\, \textbf{a}_i\,\), \(\textbf{b}' = |\mathrm B'|^{-1} \sum _j\, \textbf{a}_j\) of the two (possibly overlapping) subsets, namely:

$$\begin{aligned} \begin{aligned} \Vert \textbf{b}- \textbf{b}' \Vert ^2 \,=&{}\,\> | \mathrm B |^{-1}\, | \mathrm B' |^{-1}\, \textstyle {\sum }_{i \in \mathrm B} \textstyle {\sum }_{j \in \mathrm B'}\, \Vert {\textbf {a}}_i - {\textbf {a}}_j \Vert ^2 ~\\ {}&{} - \tfrac{1}{2}\, |\mathrm B|^{-2}\, \textstyle {\sum }_{i, k \in \mathrm B}\, \Vert {\textbf {a}}_i - {\textbf {a}}_k \Vert ^2 - \tfrac{1}{2}\, |\mathrm B'|^{-2}\, \textstyle {\sum }_{j, \ell \in \mathrm B'}\, \Vert {\textbf {a}}_j - {\textbf {a}}_\ell \Vert ^2 \end{aligned} \end{aligned}$$
(10)

This formula shows easily that the squared length of the median of a triangle \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \) from vertex \(\textbf{a}\) to the midpoint of \(\llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \) is \(\frac{1}{2} \Vert \textbf{a}- \textbf{b}\Vert ^2 + \frac{1}{2} \Vert \textbf{a}- \textbf{c}\Vert ^2 - \tfrac{1}{4} \Vert \textbf{b}- \textbf{c}\Vert ^2\), that the squared length of the bimedian of a tetrahedron \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) from the midpoint of \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) to that of \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) is \(\frac{1}{4} \big ( \Vert \textbf{a}\!-\! \textbf{c}\Vert ^2 + \Vert \textbf{a}\!-\! \textbf{d}\Vert ^2\) \(+\) \(\Vert \textbf{b}- \textbf{c}\Vert ^2 + \Vert \textbf{b}- \textbf{d}\Vert ^2 - \Vert \textbf{a}- \textbf{b}\Vert ^2 - \Vert \textbf{c}- \textbf{d}\Vert ^2 \big )\), and that the squared distance of the centroid \(\textbf{b}= |\mathrm A|^{-1} \sum _i \textbf{a}_i\) of a set of points indexed by \(\mathrm A = \{ 1,\, \ldots \,,\, N \}\) to each member \(i \in \mathrm A\) thereof is [6]

$$\begin{aligned} \Vert \textbf{a}_i - \textbf{b}\Vert ^2 ~=~ N^{-1}\, \textstyle {\sum }_{j \in \mathrm A} \Vert \textbf{a}_i - \textbf{a}_j \Vert ^2 \,-\, \tfrac{1}{2}\, N^{-2}\, \textstyle {\sum }_{k, \ell \in \mathrm A} \Vert \textbf{a}_k - \textbf{a}_\ell \Vert ^2 ~. \end{aligned}$$
(11)

In the homogeneous model the difference between two points \(\varvec{n}_0 + \textbf{a}\) and \(\varvec{n}_0 + \textbf{b}\) yields a “free” vector \(\textbf{v}= \textbf{b}- \textbf{a}\). It acts as a translation by addition, producing in particular \(\varvec{n}_0 + \textbf{b}= \varvec{n}_0 + \textbf{a}+ \textbf{v}\). The difference between two conformal points \(\varvec{a}\) and \(\varvec{b}\), however, contains another term proportional to \(\varvec{n}_\infty \), namely

$$\begin{aligned} \varvec{v} ~{:}{=}~ \varvec{b} \,-\, \varvec{a} ~=~ \textbf{v}\,+\, \tfrac{1}{2}\, (\textbf{b}^2 - \textbf{a}^2)\, \varvec{n}_\infty ~. \end{aligned}$$
(12)

Even though \(\varvec{b} = \varvec{a} + \varvec{v}\) and \(\varvec{v}^2 = \Vert \textbf{b}- \textbf{a}\Vert ^2\), the addition of \(\varvec{v}\) to an arbitrary conformal point does not yield the translated point in general. Instead, multiplying it from the left by \(\varvec{n}_\infty / 2\) yields the bivector \(\varvec{n}_\infty \textbf{v}/ 2\), which in turn generates a rotor \(\exp (\varvec{n}_\infty \textbf{v}/ 2) = 1 + \varvec{n}_\infty \textbf{v}/ 2\) that translates a point \(\varvec{c} = \varvec{n}_0 + \textbf{c}+ \varvec{n}_\infty \textbf{c}^2 / 2\) via the usual multiplicative two-sided action:

$$\begin{aligned} (1 - \varvec{n}_\infty \textbf{v}/ 2)\, \varvec{c}\, (1 + \varvec{n}_\infty \textbf{v}/ 2) ~=~ \varvec{n}_0 \,+\, \textbf{c}+ \textbf{v}\,+\, \tfrac{1}{2}\, \varvec{n}_\infty \, (\textbf{c}+ \textbf{v})^2 \end{aligned}$$
(13)

Half the difference of the two “flat” points \({\varvec{n}}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}{} {\textbf {b}} - {\varvec{n}}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}{\varvec{a}} = {{\varvec{n}}}_\infty {\textbf {v}}\) generates this same rotor \(\exp ( \varvec{n}_\infty \textbf{v}/ 2)\), and more generally any affine sum of flat points \(\sum _i \delta _i (\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{a}_i)\) \(=\) \(\varvec{n}_\infty \sum _i \delta _i\, \textbf{a}_i\) \(=\) \(\varvec{n}_\infty \textbf{v}\) with \(\sum _i \delta _i = 0\) also generates a translation. Alternatively, the difference between two flat points \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}(\varvec{b} \hspace{0.5pt}-\hspace{0.5pt} \varvec{a}) = \varvec{n}_\infty {\textbf {v}}\) does translate flat points by simple addition, i.e. \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{c}' = \varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{c} + \varvec{n}_\infty {\textbf {v}}= \varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}(\varvec{n}_0 + {\textbf {c}}+ {\textbf {v}})\), from which the corresponding conformal point can be extracted as \(\varvec{c}' = (\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{c}') {\,\varvec{\cdot }\,}\varvec{n}_0 + \varvec{n}_\infty \, \Vert {\textbf {c}}+ {\textbf {v}}\Vert ^2 / 2 \).

3 Line-Bound Vectors and Tetrahedra

The next step up from flat points are line-bound vectors, which have the form

$$\begin{aligned} \begin{aligned} \varvec{n}_\infty&\hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} ~=~ \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + {\textbf {a}}+ {\textbf {a}}^2 \varvec{n}_\infty / 2) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + {\textbf {b}}+ {\textbf {b}}^2 \varvec{n}_\infty / 2) \\ =~&\> \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + {\textbf {b}}) ~=~ \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\big ( \varvec{n}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {b}}- {\textbf {a}}) \,+\, {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}\big ) \\ =~&\> \varvec{N} \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {b}}- {\textbf {a}}) \,+\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}} ~=~ \varvec{N} ({\textbf {b}}- {\textbf {a}}) \,+\, \varvec{n}_\infty \, {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}\end{aligned} \end{aligned}$$
(14)

with \(\varvec{N} \,{:}{=}\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_0\,\). This can be constructed directly from the two flat points in question as \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} = \frac{1}{2}\, \varvec{n}_\infty \wedge (\varvec{a} + \varvec{b}) \wedge \big ( \varvec{n}_0 \,{\varvec{\cdot }}\, (\varvec{n}_\infty \wedge (\varvec{a} - \varvec{b})) \big )\).

Fig. 1
figure 1

A blade \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \in \mathcal G_{4,1}^{\,3}\) formed from three null vectors including the point-at-infinity \(\varvec{n}_\infty \) can be interpreted as a line-bound vector, which is an oriented segment of a fixed line in space wherein the position of the segment on the line is indeterminate. (All the figures in this paper were prepared using the GeoGebra dynamic geometry software)

The inner product of this with \(\varvec{n}_0\) gives a bivector \(({\textbf {b}}- {\textbf {a}}) \varvec{n}_0 -\hspace{0.5pt} {\textbf {a}} \hspace{-0.05em}\wedge \hspace{-0.05em}{} {\textbf {b}}\) that is converted by inversion in an origin-centered unit sphere into \((\textbf{b}- \textbf{a})\varvec{n}_\infty / 2 - \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}\), which then generates a Euclidean “screw” motion (translation and rotation about an axis thereof). The line-bound vector itself is determined by an oriented segment \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) of the line , where the segment’s orientation is \((\textbf{b}- \textbf{a}) \,/\, \Vert \textbf{b}- \textbf{a}\Vert \) and the line’s (minimum) distance from the origin is \(\Vert \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}\Vert \,/\, \Vert \textbf{b}- \textbf{a}\Vert \). The same line-bound vector is however obtained for any other two points \(\varvec{a}', \varvec{b}' \in \mathcal G_{4,1}^{\,1}\) with \(\textbf{b}' \!- \textbf{a}' = \textbf{b}- \textbf{a}\) and \(\textbf{a}' \hspace{-0.1em}\wedge \hspace{-0.1em}\hspace{1pt} \textbf{b}' = \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}\), meaning that it only determines the equivalence class of all translates of the original oriented segment \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) parallel to (see Fig. 1). Today this indeterminacy would be described as an Abelian gauge symmetry.

The squared length of the (defining) segment \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \varvec{|}^2\) may be obtained by squaring the line-bound vector, which yields a simple example of what is more generally known as a Cayley-Menger determinant [4, 8, 13]:

$$\begin{aligned} \begin{aligned}{}&{} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b})^2 \,=\, -(\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) {\,\varvec{\cdot }\,}(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}) ~{=}{:}\, - \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}\, \Vert ^2 ~= \\{}&{} \quad \quad \begin{aligned} -\, \mathrm {det\!} \begin{bmatrix} \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{n}_\infty &{}{} \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{a} &{}{} \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{b} \\ \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{a} &{}{} \varvec{a} {\,\varvec{\cdot }\,} \varvec{a} &{}{} \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} \\ \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{b} &{}{} \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} &{}{} \varvec{b} {\,\varvec{\cdot }\,} \varvec{b} \end{bmatrix} \,=\, \mathrm {det\!} \begin{bmatrix} ~0 &{}{} 1 &{}{} 1~ \\ ~1 &{}{} 0 &{}{} \!\tfrac{1}{2} \Vert {\textbf {a}}- {\textbf {b}}\Vert ^2 \\ ~1 &{}{} \!\tfrac{1}{2} \Vert {\textbf {a}}- {\textbf {b}}\Vert ^2\! &{}{} 0~ \end{bmatrix} \end{aligned} \\{}&{} =~ 0 + \tfrac{1}{2}\, \Vert {\textbf {a}}- {\textbf {b}}\Vert ^2 + \tfrac{1}{2}\, \Vert {\textbf {a}}- {\textbf {b}}\Vert ^2 ~=~ \Vert {\textbf {a}}- {\textbf {b}}\Vert ^2 ~=~ \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {a}}, {\textbf {b}}\hspace{0.5pt}\rrbracket \varvec{|}^2 \end{aligned} \end{aligned}$$
(15)

A little more generally, the inner product of two line-bound vectors is the inner product of the corresponding free vectors:

$$\begin{aligned} \begin{aligned}&{} -(\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) {\,\varvec{\cdot }\,} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) ~= \\{}&{} \quad -\tfrac{1}{2}\, \big ( \Vert {\textbf {a}}- {\textbf {c}}\Vert ^2 -\, \Vert {\textbf {a}}- {\textbf {d}}\Vert ^2 -\, \Vert {\textbf {b}}- {\textbf {c}}\Vert ^2 +\, \Vert {\textbf {b}}- {\textbf {d}}\Vert ^2 \big ) = ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {c}}) \end{aligned} \end{aligned}$$
(16)

In order to obtain the higher-grade parts of the geometric product of two such line-bound vectors, we expand it via Eq. (14) to get:

$$\begin{aligned} \begin{aligned}{}&{} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \\ =~ {}&{} \big ( \varvec{N} ({\textbf {b}}- {\textbf {a}}) + \varvec{n}_\infty ({\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}) \big ) \big ( \varvec{N} ({\textbf {d}}- {\textbf {c}}) + \varvec{n}_\infty ({\textbf {c}} \hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \big ) \\ =~ {}&{} ({\textbf {b}} - {\textbf {a}}) ({\textbf {d}}- {\textbf {c}}) + (\varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{N}) ({\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}) ({\textbf {d}}- {\textbf {c}}) - (\varvec{N} {\,\varvec{\cdot }\,}\varvec{n}_\infty ) ({\textbf {b}}- {\textbf {a}}) ({\textbf {c}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \\ =~ {}&{} ({\textbf {b}} - {\textbf {a}}) ({\textbf {d}}- {\textbf {c}}) \,+\, \varvec{n}_\infty ({\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}) ({\textbf {d}}- {\textbf {c}}) \,+\, \varvec{n}_\infty ({\textbf {b}}- {\textbf {a}}) ({\textbf {c}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \end{aligned} \end{aligned}$$
(17)

The two-vector part of this, which its anti-symmetry under reversion shows to be the same as the commutator product “\(\bowtie \)” of the line-bound vectors, is:

$$\begin{aligned} \begin{aligned}&\big \langle (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \big \rangle _2 ~=~ (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}) \bowtie (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) ~ \\ {}&\quad =({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \,+\, \varvec{n}_\infty \big ( ({\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {c}}) + ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,}({\textbf {c}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \big ) \end{aligned} \end{aligned}$$
(18)

Finally, the four-vector part of this product of line-bound vectors is:

$$\begin{aligned} \begin{aligned}&\big \langle (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \big \rangle _4 \\&\quad = \varvec{n}_\infty \, \big ( (\textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c}) \,+\, (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}) \big ) \\&\quad = \varvec{n}_\infty \, \big ( \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\,-\, \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\,+\, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\,-\, \textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\big ) \\&\quad = \varvec{n}_\infty \, \big ( (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \big ) \end{aligned} \end{aligned}$$
(19)

This is \(3!\, \varvec{n}_\infty \) times the oriented (w.r.t. the pseudo-scalar \(\varvec{\iota } \,{:}{=}\, {\textbf {e}}_1 {\textbf {e}}_2 {\textbf {e}}_3\) of \(\mathbb R^3\)) volume of the tetrahedron \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \). Since the line-bound vectors do not change when \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) and \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) are translated along their respective lines, the volume of the tetrahedron is also unchanged by such translations, as well as by translations of its other edges along the lines they span.

If \(\varvec{L} \,{:}{=}\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}\) and \(\varvec{M} \,{:}{=}\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}\), then Eq. (15) and the reversion symmetry of the product of \(\varvec{LM}\) with its reverse shows that it is the scalar

$$\begin{aligned} \varvec{LM} \tilde{\varvec{M}} \tilde{\varvec{L}} ~=~ \varvec{L} \tilde{\varvec{L}} \varvec{M} \tilde{\varvec{M}} ~=~ \Vert \textbf{b}- \textbf{a}\Vert ^2\, \Vert \textbf{d}- \textbf{c}\Vert ^2 ~. \end{aligned}$$
(20)

This product, however, can also be written as

$$\begin{aligned} \varvec{LM} \tilde{\varvec{M}} \tilde{\varvec{L}}= & {} \langle \varvec{LM} \rangle _{0} \langle \varvec{LM} \rangle _{0}^\sim \,+\, \langle \varvec{LM} \rangle _{2} \langle \varvec{LM} \rangle _{2}^\sim \,+\, \langle \varvec{LM} \rangle _{4} \langle \varvec{LM} \rangle _{4}^\sim \nonumber \\{} & {} {} +\,\, 2\, \langle \varvec{LM} \rangle _{0} \langle \varvec{LM} \rangle _{4}^\sim \end{aligned}$$
(21)

(since both \(\langle \varvec{LM} \rangle _{0}\) \(\langle \varvec{LM} \rangle _{2}^\sim \) \(+\) \(\langle \varvec{LM} \rangle _{2}\) \(\langle \varvec{LM} \rangle _{0}^\sim \) \(= 0\) and \(\langle \varvec{LM} \rangle _{2}\) \(\langle \varvec{LM} \rangle _{4}^\sim \) \(+\) \(\langle \varvec{LM} \rangle _{4}\) \(\langle \varvec{LM} \rangle _{2}^\sim \) \(= 0\)). Because \(\langle \varvec{LM} \rangle _{4}\) contains a factor of \(\varvec{n}_\infty \) by Eq. (19), we have \(\langle \varvec{LM} \rangle _{4}\) \(\langle \varvec{LM} \rangle _{4}^\sim = 0\), while \(\langle \varvec{LM} \rangle _{0} = ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,} ({\textbf {d}}- {\textbf {c}})\) by Eq. (16) and the last term on the right-hand side of Eq. (21) contains no scalar part. Thus the squared magnitude of \(\langle \varvec{LM} \rangle _{2}\), or scalar product “\(*\)” with itself, is

$$\begin{aligned} \begin{aligned}{}&{} \big \Vert \langle \varvec{LM} \rangle _{2} \big \Vert ^2 =\langle \varvec{LM} \rangle _{2} * \langle \varvec{LM} \rangle _{2} ~{:}{=}~ \big \langle \langle \varvec{LM} \rangle _{2}\, \langle \varvec{LM} \rangle _{2}^\sim \big \rangle _{0} ~ \\{}&{} \quad =\Vert {\textbf {b}}- {\textbf {a}}\Vert ^2\, \Vert {\textbf {d}}- {\textbf {c}}\Vert ^2 \,-\, \big ( ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {c}}) \big )^2 ~=~ \Vert ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \Vert ^2 \,. \end{aligned} \end{aligned}$$
(22)

Geometrically, this quantity is four times the squared area of the medial parallelogram \(\llbracket \hspace{0.5pt}(\textbf{a}+ \textbf{c})/2, (\textbf{c}+ \textbf{b})/2, (\textbf{b}+ \textbf{d})/2, (\textbf{d}+ \textbf{a})/2 \hspace{1pt} \hspace{0.5pt}\rrbracket \) of the tetrahedron \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \). To see that this is indeed a parallelogram, we need only note that the geometric products of the vectors along its two pairs of opposite sides are

$$\begin{aligned} \begin{aligned} \! \big ( \tfrac{1}{2} (\textbf{a}\!+\! \textbf{c}) - \tfrac{1}{2} (\textbf{c}\!+\! \textbf{b}) \big ) \big ( \tfrac{1}{2} (\textbf{d}\!+\! \textbf{a}) - \tfrac{1}{2} (\textbf{b}\!+\! \textbf{d}) \big ) \,=\, {}&{} \tfrac{1}{4}\, \Vert \textbf{a}\!-\! \textbf{b}\Vert ^2 ~, \\ \! \big ( \tfrac{1}{2} (\textbf{c}\!+\! \textbf{b}) - \tfrac{1}{2} (\textbf{b}\!+\! \textbf{d}) \big ) \big ( \tfrac{1}{2} (\textbf{a}\!+\! \textbf{c}) - \tfrac{1}{2} (\textbf{d}\!+\! \textbf{a}) \big ) \,=\, {}&{} \tfrac{1}{4}\, \Vert \textbf{c}\!-\! \textbf{d}\Vert ^2 ~. \end{aligned} \end{aligned}$$
(23)

The vanishing bivector parts of these equations show those pairs are parallel, while their scalar parts show their lengths are \(\Vert \textbf{a}- \textbf{b}\Vert / 2\) and \(\Vert \textbf{c}- \textbf{d}\Vert / 2\), resp. Furthermore, the outer product of the vectors along any two consecutive sides, say from \((\textbf{a}+ \textbf{c})/2\) to \((\textbf{c}+ \textbf{b})/2\) and \((\textbf{d}+ \textbf{a})/2\), is simply

$$\begin{aligned} \! \tfrac{1}{4}\, \big ( (\textbf{c}\!+\! \textbf{b}) - (\textbf{a}\!+\! \textbf{c}) \big ) \hspace{-0.1em}\wedge \hspace{-0.1em}\big ( (\textbf{d}\!+\! \textbf{a}) - (\textbf{a}\!+\! \textbf{c}) \big ) \,=\, \tfrac{1}{4}\, (\textbf{b}\!-\! \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}\!-\! \textbf{c}) \,, \end{aligned}$$
(24)

thereby proving this paragraph’s first assertion.

In striking analogy to the volume of a tetrahedron being 1/3 the height of any vertex over its opposite face times the area of that face, that volume is also equal to 2/3 the area of the medial parallelogram times the perpendicular distance between the corresponding pair of lines. Up to sign, this distance is

$$\begin{aligned} h_\mathsf {ab;\,cd} \,=\, ( \textbf{c}- \textbf{a}) \,{\varvec{\cdot }}\, \frac{(\textbf{b}- \textbf{a}) \times (\textbf{d}- \textbf{c})}{\Vert (\textbf{b}- \textbf{a}) {\times } (\textbf{d}- \textbf{c}) \Vert } \,=~ \tilde{\varvec{\iota }}\, \frac{(\textbf{c}- \textbf{a}) {\,\hspace{-0.1em}\wedge \hspace{-0.1em}\,} (\textbf{b}- \textbf{a}) {\,\hspace{-0.1em}\wedge \hspace{-0.1em}\,} (\textbf{d}- \textbf{a})}{\Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c}) \Vert } \,, \end{aligned}$$
(25)

where the duality of the inner, outer and cross products “\(\times \)” with respect to the pseudo-scalar \(\varvec{\iota }= -\tilde{\varvec{\iota }}\) of \(\mathbb R^3\) was utilized together with \((\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c}) = (\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}+ \textbf{a}- \textbf{c}) = (\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a})\). Since \(\Vert (\textbf{b}- \textbf{a}) {\,\hspace{-0.1em}\wedge \hspace{-0.1em}\,} (\textbf{d}- \textbf{c}) \Vert / 4\) is the medial parallelogram’s area and \(\tilde{\varvec{\iota }}\, (\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) / 6\) is the volume \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \varvec{|}\) (or its negative if the orientation of \((\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a})\) is opposite that of \(\varvec{\iota }\)), our claim follows.

Fig. 2
figure 2

Illustrations of the medial parallelogram spanned by the midpoints the segments \(\llbracket \textbf{a}, \textbf{c}\rrbracket \), \(\llbracket \textbf{c}, \textbf{b}\hspace{0.5pt}\rrbracket \), \(\llbracket \textbf{b}, \textbf{d}\rrbracket \), \(\llbracket \textbf{d}, \textbf{a}\hspace{0.5pt}\rrbracket \) between two skew line-bound vectors \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{a} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{b}\), \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{c} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{d}\) in space, showing that translating the either or both of these segments along their respective lines merely translates the parallelogram in the mid-plane of the lines without changing its shape or aspect. Because the volume of a tetrahedron (with vertices labeled here as \(\mathsf A, \mathsf B, \mathsf C, \mathsf D\)) is 2/3 of the product of the perpendicular distance between the lines , and the area of the medial parallelogram (see text), this shows that any two skew line-bound vectors determine an equivalence class of tetrahedra all with the same volume

In general, the sum of line-bound vectors is not itself a line-bound vector, but a composite entity which can be interpreted in various ways. Classical interpretations include the result of a system of forces acting at various points on a rigid body, and the result of a system of infinitesimal motions applied to a rigid body. We will not develop these theories here, but refer the interested reader to the extensive literature on the subject [16]. Instead we shall seek to interpret the graded components of the product of such an entity with itself in the context of the conformal model, as above.

Hence consider an arbitrary composite line-bound vector of the form:

$$\begin{aligned} \varvec{L} + \varvec{M} ~=~ \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \,+\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} ~=~ \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \end{aligned}$$
(26)

By Eq. (16), the inner square of this expands to:

$$\begin{aligned} \begin{aligned}{}&\big ( \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \big ) {\,\varvec{\cdot }\,} \big ( \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \big ) ~ \\{}&\quad =({\textbf {b}}- {\textbf {a}})^2 \!+\! 2 ({\textbf {b}}\!-\! {\textbf {a}}) \,{\varvec{\cdot }}\,({\textbf {d}}- {\textbf {c}}) \!+\! ({\textbf {d}}- {\textbf {c}})^2 = 4 \Vert ({\textbf {b}}\!+\! {\textbf {d}}) / 2 \!-\! ({\textbf {a}}+ {\textbf {c}}) / 2 \Vert ^2 \end{aligned}\end{aligned}$$
(27)

Thus the length of this diagonal of the medial parallelogram (which is also a bimedian of the tetrahedron) remains unchanged as \( \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) and \( \llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) are translated along their respective lines. The lengths of its sides \(\Vert \textbf{b}- \textbf{a}\Vert / 2\) and \(\Vert \textbf{d}- \textbf{c}\Vert / 2\) are of course also invariant under such translations. Finally, Eq. (18) shows that the bivector of the medial parallelogram is likewise invariant. It follows that translations of \( \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\hspace{0.5pt}\rrbracket \) and \( \llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) along their respective lines merely translate the corresponding medial parallelogram in the mid-plane of the lines without changing its shape or aspect (as illustrated in Fig. 2), and in accord with the above volume formula, cf. Eq. (25).

The anti-symmetry of Eq. (18) under the \((\textbf{a}, \textbf{b}) \leftrightarrow (\textbf{c}, \textbf{d})\) swap shows that the 2-vector part of the square of a composite line-bound vector vanishes. The 4-vector part, however, is:

$$\begin{aligned} \begin{aligned} \Big \langle \! \big ( \varvec{n}_\infty \hspace{-0.05em} \wedge \hspace{-0.05em}(\varvec{a} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{b} + \varvec{c} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{d}) \big )^2 \Big \rangle _4 =~ 2\, \varvec{n}_\infty \, \big ( ({\textbf {b}}- {\textbf {a}}) \hspace{-0.05em} \wedge \hspace{-0.05em}({\textbf {c}}\hspace{-0.05em}\wedge \hspace{-0.05em} {\textbf {d}}) \,+\, ({\textbf {a}}\hspace{-0.05em} \wedge \hspace{-0.05em} {\textbf {b}}) \hspace{-0.05em}\wedge \hspace{-0.05em}({\textbf {d}}- {\textbf {c}}) \big ) \end{aligned} \end{aligned}$$
(28)

This clearly does vanish if \(\textbf{b}- \textbf{a}= \textbf{d}- \textbf{c}\) or \(\textbf{a}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{b}= \textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\), i.e. the line-bound vector in question is simple (non-composite). On taking its dual with respect to \(\varvec{\iota }\), we obtain:

$$\begin{aligned} \begin{aligned}&\varvec{\iota }\, \Big \langle \! \big ( \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \big )^2 \Big \rangle _4 \\ {}&\quad =~ 2\, \varvec{n}_\infty \, \big ( ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,} (\tilde{\varvec{\iota }}\, {\textbf {c}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \,+\, (\tilde{\varvec{\iota }}\, {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {c}}) \big ) \\ {}&\quad =~ 2\, \varvec{n}_\infty \, \big ( ({\textbf {b}}- {\textbf {a}}) {\,\varvec{\cdot }\,}({\textbf {c}}\times {\textbf {d}}) \,+\, ({\textbf {a}}\times {\textbf {b}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {c}}) \big ) \end{aligned} \end{aligned}$$
(29)

The vanishing of the scalar coefficient of \(2\, \varvec{n}_\infty \) on the right is a well-known condition for the lines and to either intersect or be parallel [16]. In fact for it is just a way of writing the famous Plücker identity for the six Plücker coordinates of a line in projective three-space.

It is seldom noted, nevertheless, that this same expression is equal to \(\pm 3!\) times the volume \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \varvec{|}\) of the tetrahedron. This follows from the fact that the 4 vector parts of \(2\, \varvec{LM}\) and \((\varvec{L} + \varvec{M})^2\) are obviously the same (cf. Eq. (19)). A thorough study of the representation of the more general Grassmann-Plücker relations in geometric algebra was recently given by Sobczyk [27].

Finally, we have the relation (first noted in the homogeneous model by Grassmann) between the sum of the line-bound vectors around any triangle \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \) and (twice) the free bivector of that triangle, namely

$$\begin{aligned} \begin{aligned} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b}\,+\,&{} \varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}) ~ \\{}&{} =\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{b} - \varvec{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{c} - \varvec{a}) ~=~ \varvec{n}_\infty \, ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {a}}) ~, \end{aligned} \end{aligned}$$
(30)

because the free vector coefficients of \(\varvec{N}\) from Eq. (14) cancel. This can be regarded as a discrete version of Green’s theorem. A similar relation can also be obtained by considering the sum of the line-bound vectors around any one of the three Hamiltonian cycles of a tetrahedron \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \), e.g.

$$\begin{aligned} \begin{aligned} {}&{} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} + \varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} + \varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} + \varvec{d} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}) ~ \\{}&{} \qquad \quad =\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{b} - \varvec{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{d} - \varvec{c}) ~=~ \varvec{n}_\infty \, ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) ~, \end{aligned} \end{aligned}$$
(31)

which is \(\varvec{n}_\infty \) times the free bivector of the medial parallelogram separating the line from (as in Fig. 2).

4 Plane-Bound Bivectors and Tetrahedra

We now consider the relations between two plane-bound bivectors, along with the space-bound trivector (oriented volume) which a plane-bound bivector and a flat point mutually define. In the conformal model, a plane-bound bivector has the form:

$$\begin{aligned} \begin{aligned} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} ~=~&\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + \textbf{c}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\varvec{n}_0 + \textbf{d}) \\ =~&\varvec{N}\, (\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}- \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}+ \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}) \,+\, \varvec{n}_\infty \, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\\ =~&\varvec{N}\, (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,+\, \varvec{n}_\infty \, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\end{aligned} \end{aligned}$$
(32)

The free bivector \((\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b})\) has a squared magnitude of

$$\begin{aligned} \begin{aligned} \Vert ({\textbf {c}}- {\textbf {b}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \Vert ^2 ~=~ \Vert {\textbf {c}}- {\textbf {b}}\Vert ^2 \Vert {\textbf {d}}- {\textbf {b}}\Vert ^2 \,-\, \big ( ({\textbf {c}}- {\textbf {b}}) {\,\varvec{\cdot }\,}({\textbf {d}}- {\textbf {b}}) \big )^2 \end{aligned} \end{aligned}$$
(33)

which is of course four times the squared area \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \varvec{|}^2\). Its normal vector parallel to \((\textbf{c}- \textbf{b}) \times (\textbf{d}- \textbf{b}) = -\varvec{\iota }\, (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b})\) determines the orientation of the plane containing the triangle \(\llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \subset \mathbb R^3\), while the distance of the plane from the origin is \(\Vert {\textbf {b}} \hspace{-0.05em}\wedge \hspace{-0.05em} {\textbf {c}} \hspace{-0.05em}\wedge \hspace{-0.05em}{} {\textbf {d}} \Vert \,/\, \Vert ({\textbf {c}} - {\textbf {b}}) \hspace{-0.05em}\wedge \hspace{-0.05em} ({\textbf {d}} - {\textbf {b}}) \Vert \). The same plane-bound bivector, however, is obtained for any other triple of conformal points \(\varvec{b}'\), \(\varvec{c}'\), \(\varvec{d}'\) that lie in the same plane and span a triangle \(\llbracket \hspace{0.5pt}\textbf{b}', \textbf{c}', \textbf{d}' \hspace{0.5pt}\rrbracket \) with the same oriented areaFootnote 4 (as depicted in Fig. 3).

Fig. 3
figure 3

A plane-bound bivector \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}\) can be viewed as an equivalence class of triangles \(\llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) (labeled in the drawing as \(\mathsf B\), \(\mathsf C\), \(\mathsf D\)) in a fixed plane having an area equal to half its norm. Any other triangle \(\llbracket \hspace{0.5pt}\textbf{b}', \textbf{c}', \textbf{d}' \hspace{0.5pt}\rrbracket \) (similarly labeled) in the class is related to the first by an oriented-area-preserving affine transform of its plane. Thus the plane-bound bivector together with a flat point \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}\) (labeled \(\mathsf A\)) at a fixed distance above the plane determines an equivalence class of tetrahedra all with the same volume

The three-point Cayley-Menger determinant, obtained by multiplying the plane-bound bivector with the negative of its reverse, is:

$$\begin{aligned}{} & {} -(\varvec{d} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \nonumber \\{} & {} \quad =~ 2\, \big ( (\varvec{b} \,{\varvec{\cdot }}\, \varvec{c}) (\varvec{b} \,{\varvec{\cdot }}\, \varvec{d}) + (\varvec{b} \,{\varvec{\cdot }}\, \varvec{c}) (\varvec{c} \,{\varvec{\cdot }}\, \varvec{d}) + (\varvec{b} \,{\varvec{\cdot }}\, \varvec{d}) (\varvec{c} \,{\varvec{\cdot }}\, \varvec{d}) \big ) \\{} & {} \qquad -\, \big ( (\varvec{b} \,{\varvec{\cdot }}\, \varvec{c})^2 + (\varvec{b} \,{\varvec{\cdot }}\, \varvec{d})^2 + (\varvec{c} \,{\varvec{\cdot }}\, \varvec{d})^2 \big ) \nonumber \\{} & {} \quad =~ \tfrac{1}{4}\, \big ( \Vert \textbf{b}{\,-\,} \textbf{c}\Vert + \Vert \textbf{b}{\,-\,} \textbf{d}\Vert + \Vert \textbf{c}{\,-\,} \textbf{d}\Vert \big ) \big ( \Vert \textbf{b}{\,-\,} \textbf{c}\Vert + \Vert \textbf{b}{\,-\,} \textbf{d}\Vert - \Vert \textbf{c}{\,-\,} \textbf{d}\Vert \big ) \nonumber \\{} & {} \qquad \big ( \Vert \textbf{b}{\,-\,} \textbf{c}\Vert - \Vert \textbf{b}{\,-\,} \textbf{d}\Vert + \Vert \textbf{c}{\,-\,} \textbf{d}\Vert \big ) \big ( \!-\! \Vert \textbf{b}{\,-\,} \textbf{c}\Vert + \Vert \textbf{b}{\,-\,} \textbf{d}\Vert + \Vert \textbf{c}{\,-\,} \textbf{d}\Vert \big )\nonumber \end{aligned}$$
(34)

In this following, this determinant will often be written as where is the magnitude of any \(\textbf{X}\in \mathcal G_{4,1}\). By expanding the squared dot product in Eq. (33) via the law of cosines \(\textbf{x}\,{\varvec{\cdot }}\, \textbf{y}= (\Vert \textbf{x}\Vert ^2 + \Vert \textbf{y}\Vert ^2 - \Vert \textbf{x}- \textbf{y}\Vert ^2)/2\), it can readily be shown that this Cayley-Menger determinant is also that free bivector’s squared norm. The factorized expression on the right-hand side of this equation is of course Heron’s formula for the squared area (times 4) of the triangle \(\llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \), which will be studied in much greater detail in the next section. At this point it need only be noted that, as a polynomial in three variables variables \(d_\textsf{bc}\), \(d_\textsf{bd}\), \(d_\textsf{cd}\) \(\ge 0\) representing the corresponding distances, this formula is non-negative if and only if those variables satisfy all three triangle inequalities among them.

The negative inner product of different plane-bound bivectors gives a non-symmetric Cayley–Menger determinant (one of which will be reversed for consistency even though it’s reverse symmetric). Providing their planes intersect, we may assume without loss of generality that the point triples \(\varvec{a}, \varvec{b}, \varvec{c}\) and \(\varvec{a}, \varvec{b}, \varvec{d}\) have a pair \(\varvec{a}, \varvec{b}\) in common, so that:

$$\begin{aligned} {}{} & {} {} (\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) {\,\varvec{\cdot }\,} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \nonumber \\{}{} & {} {} =~ \big ( \varvec{N} ({\textbf {b}}\!-\! {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}\!-\! {\textbf {a}}) + \varvec{n}_\infty \, {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {c}}) \big ) {\,\varvec{\cdot }\,} \big ( \varvec{N} ({\textbf {b}}\!-\! {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}\!-\! {\textbf {a}}) + \varvec{n}_\infty \, {\textbf {a}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {b}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {d}}) \big ) \nonumber \\{}{} & {} {} =~ \big ( ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {a}}) \big ) {\,\varvec{\cdot }\,} \big ( ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {a}}) \big ) \end{aligned}$$
(35)

Geometrically, this inner product is \(-\Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \Vert \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \Vert \) \(\cos (\varphi _\textsf{ab})\), where \(\varphi _\textsf{ab}\) is the internal dihedral angle between the planes and . We also have the trivial identity among free bivectors,

$$\begin{aligned} (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c}) ~=~ (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \,-\, (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \end{aligned}$$
(36)

which, upon taking the squared norms of both sides, becomes

$$\begin{aligned} \begin{aligned} \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c}) \Vert ^2 ~=~ \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \Vert ^2 \,+\, \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \Vert ^2&\\ -\; 2\, \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \Vert \, \Vert (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \Vert \hspace{1pt} \cos (\varphi _\textsf{ab})&\,. \end{aligned} \end{aligned}$$
(37)

Together with Eqs. (18), (22), (35) and (37), this leads to the little-known areal law of cosines,

(38)

where \(\varvec{L} \bowtie \varvec{M} = \big \langle \varvec{LM} \big \rangle _2\) is the commutator product of the line bound vectors as they were defined in Eq. (20).

There is also a corresponding areal law of sines, obtained from a simple case of the dual (Grassmann’s regressive) outer product “\(\vee \)” corresponding to the meet of the associated subspaces [18, 22]. Letting \(\textbf{X}\) be an arbitrary blade (here of grade 1 in \(\mathcal G_3\) or 3 in \(\mathcal G_{4,1}\), though the definition is general) and \(\textbf{y}, \textbf{z}\) be vectors with \(\Vert \textbf{X}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{y}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{z}\Vert ^2 \ne 0\), this is given by

(39)

where \((\textbf{X}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{y}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{z})^*\) is the dual w.r.t. the unit pseudo-scalar of the subspaces’ join. Upon taking squared norms and recalling (see e.g. Ref. [7, §5.6]) that the magnitude of such a dual outer product is where \(\varphi \) is the internal angle between the subspaces of \(\textbf{X}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{y}\) and \(\textbf{X}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{z}\), this implies:

(40)

where \(\varphi _\textsf{ab}\) is the dihedral angle as defined above.

Now consider the product of a flat point with a plane-bound bivector:

$$\begin{aligned}{} & {} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) \nonumber \\{} & {} \quad =~ (\varvec{N} + \varvec{n}_\infty \, \textbf{a})\, \big ( \varvec{N}\, (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,+\, \varvec{n}_\infty \, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\big ) \nonumber \\{} & {} \quad =~ (1 + \varvec{n}_\infty \, \textbf{a})\, (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,-\, \varvec{n}_\infty \, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\nonumber \\{} & {} \quad =~ (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,+\, \varvec{n}_\infty \, \textbf{a}\,{\varvec{\cdot }}\, \big ( (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \big ) \nonumber \\{} & {} \qquad \qquad \quad +\; \varvec{n}_\infty \, (\textbf{a}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \end{aligned}$$
(41)

The \(\varvec{n}_\infty \, {\textbf {a}} {\,\varvec{\cdot }\,}\big ( ({\textbf {c}}- {\textbf {b}}) \hspace{-0.1em}\wedge \hspace{-0.1em} ({\textbf {d}} - {\textbf {b}}) \big )\) term is unfortunately not translation invariant, but the rest of its 2-vector part \((\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b})\) is, as is its 4-vector part \(\varvec{n}_\infty \, (\textbf{a}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b})\). The latter is also the commutator product of the flat point and plane-bound bivector, which may be expanded using the general relation \(({\textbf {x}}\hspace{-0.1em}\wedge \hspace{-0.1em}{} {\textbf {y}}) \bowtie {\textbf {Z}}= {\textbf {x}}\hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {y}} {\,\varvec{\cdot }\,} {\textbf {Z}}) - {\textbf {y}} \hspace{-0.1em}\wedge \hspace{-0.1em} ({\textbf {x}} {\,\varvec{\cdot }\,} {\textbf {Z}})\) [18, Eq. (1.60b)] as:

$$\begin{aligned} {}&{} (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}) \bowtie (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}) ~=~ -\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} \,+ \nonumber \\{}&{} \qquad \quad \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} \,+\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} \,+\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \end{aligned}$$
(42)

Its translation invariance shows that the volume \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}'\!, \textbf{c}'\!, \textbf{d}' \hspace{0.5pt}\rrbracket \varvec{|}\) of the tetrahedron is the same for all \(\textbf{b}'\), \(\textbf{c}'\), \(\textbf{d}'\) in the same plane and spanning a triangle of the same oriented area (cf. Fig. 3). It is also the same, of course, for any translate of \(\textbf{a}\) in the plane through \(\textbf{a}\) parallel to .

We can put \(\textbf{a}\) at the origin by translating all the points with the rotor \(\varvec{T}_{\textbf {a}} \,{:}{=}\, 1 - {\textbf {a}}\varvec{n}_\infty / 2\), obtaining:

$$\begin{aligned}{} & {} \tilde{\varvec{T}}_\textbf{a}\, ( \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} )\, \varvec{T}_\textbf{a}\, \tilde{\varvec{T}}_\textbf{a}\, (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d})\, \varvec{T}_\textbf{a}\nonumber \\{} & {} \qquad \qquad \quad =~ (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,-\, \varvec{n}_\infty \, \textbf{b}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}\hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{d}\end{aligned}$$
(43)

Thus our remarks following Eq. (33) show that the height of \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}\) above the plane of \(\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}\) is

(44)

which is the same as the ratio of the norms of the corresponding translation-independent terms in Eq. (41).

Fig. 4
figure 4

The line-bound vectors (black arrows) around any exterior face of a tetrahedron are equal to the free bivector part of the plane-bound bivector of that face. The sum of those free bivectors, oriented as indicated in the drawing so that their duals are outwards-pointing vectors (if vertex \(\mathsf A\) is above in plane of \(\mathsf B, \mathsf C, \mathsf D\)), vanishes by Minkowski’s identity. Thus this identity simply reflects the fact that the corresponding line-bound vectors occur in equal but oppositely oriented pairs along each edge

Last but not least, we have the following discrete version of Stoke’s theorem among the plane-bound bivectors of the four faces of the tetrahedron, which follows from Eq. (42):

$$\begin{aligned} {}{} & {} {} \varvec{n}_\infty \,\wedge \, (\varvec{b} \wedge \varvec{c} \wedge \varvec{d} - \varvec{a} \wedge \varvec{c} \wedge \varvec{d} + \varvec{a} \wedge \varvec{b} \wedge \varvec{d} - \varvec{a} \wedge \varvec{b} \wedge \varvec{c}) ~ \nonumber \\{}{} & {} {} \qquad \ = \varvec{n}_\infty \wedge (\varvec{b} - \varvec{a}) \wedge (\varvec{c} - \varvec{a}) \wedge (\varvec{d} - \varvec{a}) ~=~ \varvec{n}_\infty \, ({\textbf {b}}- {\textbf {a}}) \wedge ({\textbf {c}}- {\textbf {a}}) \wedge ({\textbf {d}}- {\textbf {a}}) \nonumber \\ \end{aligned}$$
(45)

Together with Eq. (30), this implies that the sum (times \(\varvec{N}\), as in Eq. (32)) of the free bivector parts of these plane-bound bivectors vanishes, or

$$\begin{aligned} \!\! (\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b}) \,=\, (\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \,-\, (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a}) \,+\, (\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{a}) \,, \end{aligned}$$
(46)

a result usually attributed to Hermann Minkowski although it must have been known to Grassmann. An alternative derivation of this formula, based upon the relation among the line-bound vectors around any face of the tetrahedron from Eq. (30), is sketched in Fig. 4 and its caption.

Note that the bivectors of the four faces determine those of the medial parallelogram \((\textbf{b}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{c})\) via Eq. (36) and its analogues for the other two medial parallelogram bivectors \((\textbf{c}- \textbf{a}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{b})\) and \((\textbf{c}- \textbf{b}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{a})\).

This system of linear relations among these bivectors can be inverted to express the bivector of each face as a signed sum of those of the three medial parallelograms (cf. [14, Part I]), namely:

$$\begin{aligned}{} & {} -2\, ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {a}}) ~= \nonumber \\{} & {} \qquad \qquad \qquad ~ ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \,-\, ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \,-\, ({\textbf {d}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {b}}) \nonumber \\{} & {} \quad 2\, ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {a}}) ~= \nonumber \\{} & {} \qquad \qquad \qquad ~~ ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \,+\, ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \,+\, ({\textbf {d}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {b}}) \qquad \qquad \\{} & {} -2\, ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {a}}) ~= \nonumber \\{} & {} \qquad \qquad - ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \,-\, ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \,+\, ({\textbf {d}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {b}}) \nonumber \\{} & {} \quad 2\, ({\textbf {c}}- {\textbf {b}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) ~= \nonumber \\{} & {} \qquad \qquad - ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \,+\, ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \,-\, ({\textbf {d}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {b}})\nonumber \end{aligned}$$
(47)

These analogues of Minkowski’s identity (together with Eq. (25)) justify the heterodox point-of-view that the tetrahedron actually has seven faces, where its three medial parallelograms qualify as interior faces. Further justification derives from the fact (first noted in unpublished work by B. D. S. McConnell circa 2012; see also Theorem 11 in Ref. [14, Part I]) that the areas of these seven faces mutually determine a non-degenerate tetrahedron up to isometry.

5 Heron’s Formula, the In-Circle, and the In-Touch Triangle

The geometric essence of Heron’s formula is that it is a relation between the radius of the in-circle of a triangle \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \subset \mathbb R^2\) and the lengths of the segments into which its edges are divided by the points at which the in-circle “touches” those edges.Footnote 5 As may be seen in Fig. 5, these segments come in pairs of equal lengths each with a vertex in common. Those lengths uvw have been called the “Heron parameters” of the triangle [3], and clearly determine the lengths of its edges \(a \,{:}{=}\, \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {b}}, {\textbf {c}}\hspace{0.5pt}\rrbracket \varvec{|}\), \(b \,{:}{=}\, \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {a}}, {\textbf {c}}\hspace{0.5pt}\rrbracket \varvec{|}\), \(c \,{:}{=}\, \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {a}}, {\textbf {b}}\hspace{0.5pt}\rrbracket \varvec{|}\) as \(a = v + w\), \(b = u + w\), \(c = u + v\). Conversely, one can solve this non-singular system of linear equations to obtain the Heron parameters from the edge lengths as \(u = (-a + b + c)/2\), \(v = (a - b + c)/2\), \(w = (a + b - c)/2\).

Fig. 5
figure 5

Diagram showing how the in-circle of a triangle with vertices \(\textbf{a}, \textbf{b}, \textbf{c}\in \mathbb R^2\) labeled as \(\mathsf A, \mathsf B, \mathsf C\), respectively, determines its Heron parameters uvw. The in-circle “touches” the triangle’s edges at its in-touch points \(\mathsf J, \mathsf K, \mathsf L\), which are all the same distance r (the in-radius) from the in-center \(\mathsf I\) where its angle bisectors (dotted) meet. The in-touch points span a second triangle, called the in-touch triangle (light brown), whose circum-circle coincides with the in-circle of the first. This section shows that \(r = \sqrt{uvw/s}\), where \(s = u + v + w\) is half the triangle’s perimeter, and that its area \(t = rs\). These relations lead immediately to Heron’s formula: \(t^2 ~=~ s\, uvw ~=~ \tfrac{1}{2}\, (u\!+\!v\!+\!w)\, \textrm{det}\! \left[ \begin{array}{lll} 0\,&{}\,u\,&{}\,v \\ u\,&{}\,0\,&{}\,w \\ v\,&{}\,w\,&{}\,0 \end{array}\right] \)

It follows that the Heron parameters specify the triangle up to isometry in a manifestly coordinate-free fashion. The same, of course, is true for the edge lengths abc themselves, but the Heron parameters have the distinct advantage over the edge lengths of not being constrained by the triangle inequality, because the edge lengths obtained as above from any \(u, v, w \ge 0\) necessarily obey the triangle inequality. This means the Heron parameters can be varied wholly independently of one another, and that makes them truly the natural parameters for the venerable discipline of triangle geometry.

If \(\textbf{i}\in \mathbb R^2\) is the in-center of the triangle \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \), r is the in-radius thereof and \(t \,{:}{=}\, \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {a}}, {\textbf {b}}, {\textbf {c}}\hspace{0.5pt}\rrbracket \varvec{|}\) is the triangle’s area, we see easily from Fig. 5 that

$$\begin{aligned} \begin{aligned} t ~=~ {}&{} \varvec{|}\llbracket \hspace{0.5pt}\hspace{0.5pt} \textbf{i}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \varvec{|}+ \varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{i}, \textbf{c}\hspace{0.5pt}\rrbracket \varvec{|}+ \varvec{|}\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{i}\hspace{0.5pt}\hspace{0.5pt}\rrbracket \varvec{|}\\ =~ {}&{} \tfrac{1}{2}\, r\, a \,+\, \tfrac{1}{2}\, r\, b \,+\, \tfrac{1}{2}\, r\, c ~=~ r\, s ~, \end{aligned} \end{aligned}$$
(48)

where \(s \,{:}{=}\,(a+b+c)/2 = u+v+w\) is the triangle’s semi-perimeter. This shows that a formula for r is pretty much the same as a formula for t. Because the barycentric coordinates of \(\textbf{i}\) are the ratios of these signed areas to the total signed area and the signs of the areas of \(\llbracket \hspace{0.5pt}\textbf{i}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \), \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{i}, \textbf{c}\hspace{0.5pt}\rrbracket \) and \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{i}\hspace{0.5pt}\rrbracket \) agree with that of \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \), the in-center \(\textbf{i}\) is given by

$$\begin{aligned} \textbf{i}~=~ \frac{a}{2s}\, \textbf{a}\,+\, \frac{b}{2s}\, \textbf{b}\,+\, \frac{c}{2s}\, \textbf{c}~=~ \frac{(v\!+\!w)\, \textbf{a}\,+\, (u\!+\!w)\, \textbf{b}\,+\, (u\!+\!v)\, \textbf{c}}{2\,(u+v+w)} \,. \end{aligned}$$
(49)

Letting \(\varvec{a}, \varvec{b}, \varvec{c}, \varvec{i} \in \mathcal G_{3,1}^{\,1} \subset \mathcal G_{4,1}^{\,1}\) be the corresponding conformal points including the correction terms from Eq. (3), a neat proof of these claims can be obtained via Eq. (42) simply by noting that the commutator product \((\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c}) \bowtie (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{i}) = \varvec{n}_\infty \, ({\textbf {a}}- {\textbf {i}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {b}}- {\textbf {i}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {i}})\) vanishes because \(\textbf{i}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \). This also shows that the dual representation [7, §14.1] of the in-circle itself can be written as

$$\begin{aligned} \begin{aligned} \varvec{r} ~\,{:}{=}\,~ {}&{} \varvec{i} - \tfrac{1}{2}\, r^2\, \varvec{n}_\infty ~=~ \big ( a\, \varvec{a} \,+\, b\, \varvec{b} \,+\, c\, \varvec{c} \big ) / (2s) ~+ \\ {}&\qquad \quad \varvec{n}_\infty \, \big ( ab\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} + ac\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{c} + bc\, \varvec{b} {\,\varvec{\cdot }\,} \varvec{c} - 2\, s^2\, r^2 \big ) / (2s)^2 \\ =~ {}&{} \varvec{n}_0 +\, {\textbf {i}}\,+\, \varvec{n}_\infty \, \big ( (a\, {\textbf {a}}^2 + b\, {\textbf {b}}^2 + c\, {\textbf {c}}^2 - abc)\, s - 2\, t^2 \big ) / (2s)^2 \,, \end{aligned} \end{aligned}$$
(50)

wherein \(\Vert \hspace{1pt} {\textbf {i}}\hspace{1pt}\Vert ^2 = -2\, \varvec{i} {\,\varvec{\cdot }\,} \varvec{n}_0 = (a\, {\textbf {a}}^2 + b\, {\textbf {b}}^2 + c\, {\textbf {c}}^2 - abc) / (2\, s)\). As is well known, \(abc = 4\, t R\) where R is the triangle’s circum-radius, so taking \(\textbf{i}\) as the origin shows that \((a \Vert {\textbf {a}} - {\textbf {i}} \Vert ^2 + b \Vert {\textbf {b}} - {\textbf {i}} \Vert ^2 + c \Vert {\textbf {c}} - {\textbf {i}} \Vert ^2) / (2\,s) = 2\, r R = R^2 - d^2\) by Euler’s theorem, where d is the distance of the in-center from the circum-center.

The Heron parameters can also be interpreted as the barycentric coordinates of the in-touch points \(\textbf{j}\in \llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}\rrbracket \), \(\textbf{k}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{c}\rrbracket \), \(\textbf{l}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}\rrbracket \), at which the in-circle touches the triangle’s edges, times their lengths:

$$\begin{aligned} \textbf{j}~=~ \frac{w}{a}\, \textbf{b}+ \frac{v}{a}\, \textbf{c}\,,\quad \textbf{k}~=~ \frac{w}{b}\, \textbf{a}+ \frac{u}{b}\, \textbf{c}\,,\quad \textbf{l}~=~ \frac{v}{c}\, \textbf{a}+ \frac{u}{c}\, \textbf{b}\end{aligned}$$
(51)

The corresponding conformal points are

$$\begin{aligned} \begin{aligned} \varvec{j} ~=~ (w \varvec{b} + v \varvec{c})/a + \varvec{n}_\infty \, vw\, \varvec{b} {\,\varvec{\cdot }\,} \varvec{c} / a^2 {}&{} ~=~ (w \varvec{b} + v \varvec{c})/a - \varvec{n}_\infty \, vw / 2 \,,\\ \varvec{k} ~=\, (w \varvec{a} + u \varvec{c})/b + \varvec{n}_\infty \, uw\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{c} / b^2 {}&{} ~=~ (w \varvec{a} + u \varvec{c})/b - \varvec{n}_\infty \, uw / 2 \,, \\ \varvec{l} ~=~ (v \varvec{a} \hspace{1pt}+\hspace{1pt} u \varvec{b})/c +\, \varvec{n}_\infty \, uv\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} / c^2 {}&{} ~=~ (v \varvec{a} + u \varvec{b})/c \hspace{1pt}-\hspace{1pt} \varvec{n}_\infty \, uv / 2 \,. \end{aligned} \end{aligned}$$
(52)

From this, we find easily that the plane-bound bivector of \(\llbracket \hspace{0.5pt}\hspace{1pt}\textbf{j}, \textbf{k}, \textbf{l}\hspace{1pt} \hspace{0.5pt}\rrbracket \) is

$$\begin{aligned} \begin{aligned} {}&{}\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} ~ \\ {}&{}=\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(w \varvec{b} + v \varvec{c}) \hspace{-0.1em}\wedge \hspace{-0.1em}(w \varvec{a} + u \varvec{c}) \hspace{-0.1em}\wedge \hspace{-0.1em}(v \varvec{a} + u \varvec{b}) \,/\, (abc) \\ {}&{} =~ 2\, uvw\, \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \,/\, (abc) ~, \end{aligned} \end{aligned}$$
(53)

and hence

(54)

where \(\Omega (u,v,w) \,{:}{=}\, 2\, uvw\) and \(\textbf{X}\, := \, \sqrt{ |\Vert \textbf{X}\Vert ^2 |}\) for \(\varvec{X} \in \mathcal G_{3,1}\) as before.

It follows that if we can find the area of \(\llbracket \hspace{0.5pt}\hspace{1pt}\textbf{j}, \textbf{k}, \textbf{l}\hspace{1pt} \hspace{0.5pt}\rrbracket \) as a function of the Heron parameters we will also get the area of \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \), again as a function of uvw. The triangle \(\llbracket \hspace{0.5pt}\hspace{1pt}\textbf{j}, \textbf{k}, \textbf{l}\hspace{1pt} \hspace{0.5pt}\rrbracket \) is variously known as the Gergonne, contact or in-touch triangle [1, 20, 25], and we shall use the latter nomenclature. As may be seen in Fig. 5, the circum-circle of the in-touch triangle coincides with the in-circle of the original and, as a result, the perpendicular bisectors of the in-touch triangle’s edges also coincide with the internal angle bisectors of the original. It is also apparent that the edge lengths of the in-touch triangle \(j \,{:}{=}\, \Vert \hspace{0.5pt} {\textbf {k}}- {\textbf {l}}\hspace{0.5pt}\Vert \), \(k \,{:}{=}\, \Vert \hspace{0.5pt} {\textbf {j}} - {\textbf {l}}\hspace{0.5pt}\Vert \), \(\ell \,{:}{=}\, \Vert \hspace{0.5pt} {\textbf {j}} - {\textbf {k}}\hspace{0.5pt}\Vert \) are twice the heights of \(\textbf{j}\), \(\textbf{k}\), \(\textbf{l}\) over the hypotenuses of the congruent pairs of right triangles \(\llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{k}, \textbf{a}\hspace{0.5pt}\rrbracket \approx \llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{l}, \textbf{a}\hspace{0.5pt}\rrbracket \), \(\llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{j}, \textbf{b}\hspace{0.5pt}\rrbracket \approx \llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{l}, \textbf{b}\hspace{0.5pt}\rrbracket \) and \(\llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{j}, \textbf{c}\hspace{0.5pt}\rrbracket \approx \llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{k}, \textbf{c}\hspace{0.5pt}\rrbracket \), respectively.

This latter fact can readily be used to show that the in-touch triangle’s edge lengths \(j, k, \ell \) are given by

$$\begin{aligned} j^2 ~=~ \frac{4\, u^2 r^2}{u^2 + r^2} ~,\quad k^2 ~=~ \frac{4\, v^2 r^2}{v^2 + r^2} ~,\quad \ell ^2 ~=~ \frac{4\, w^2 r^2}{w^2 + r^2} ~. \end{aligned}$$
(55)

Because they depend on the quantity we seek, namely \(r^2\), in a non-linear fashion, these simple expressions are not well-suited to our immediate purposes (although their three-dimensional analogs play an essential role in the next section). Hence we will instead derive three equivalent but quite different formulae for these distances, one of which is:

$$\begin{aligned} \ell ^2= & {} {} \Vert \, {\textbf {j}}- {\textbf {i}}- {\textbf {k}}+ {\textbf {i}}\, \Vert ^2 \,=~ \Vert \, {\textbf {j}}- {\textbf {i}}\,\Vert ^2 + \Vert \, {\textbf {k}}- {\textbf {i}}\,\Vert ^2 -\, 2\, ( {\textbf {j}}- {\textbf {i}}) {\,\varvec{\cdot }\,} ( {\textbf {k}}- {\textbf {i}}) \nonumber \\ {}= & {} {} 2\, r^2\, (1 + \cos (\vartheta _\mathsf c)) \,=\, 2\, r^2\, (ab + (a^2 + b^2 - c^2)/2) \,/\, (ab) \\ {}= & {} {} r^2\, ((a \!+\! b)^2 - c^2) / (ab) \,=\, r^2\, (a \!+\! b \!+\! c)(a \!+\! b \!-\! c) / (ab) \,=\, 4\, r^2 s\, w / (ab) \nonumber \end{aligned}$$
(56)

On the second line, we have used the definitions of the in-touch points and in-radius \(r = \Vert \, \textbf{j}- \textbf{i}\,\Vert = \Vert \, \textbf{k}- \textbf{i}\,\Vert \), the fact that the angle between \(\textbf{j}- \textbf{i}\) and \(\textbf{k}- \textbf{i}\) is supplementary to the original triangle’s angle \(\vartheta _\mathsf c\) at the vertex labeled \(\mathsf C\) in Fig. 5, and finally the law of cosines for this latter angle. On the third line, we used the definition \(s = (a\!+\!b\!+\!c)/2\) and formula \(w = (a\!+\!b\!-\!c)/2\) from this section’s first paragraph. In a similar fashion one can also show that \(k^2 = 4\, r^2\,s v / (ac)\) and \(j^2 = 4\, r^2\,s u / (bc)\).

We can utilize these formulae to calculate the squared area of the in-touch triangle (times 4) by expanding its three-point Cayley-Menger determinant \(-\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l}\, \Vert ^2\) via Eq. (34), but the algebra is a bit messy. The determinant can however be simplified considerably by defining the rescaled vectors \(\varvec{j}' \,{:}{=}\, a\, \varvec{j} / q\), \(\varvec{k}' \,{:}{=}\, b\, \varvec{k} / q\), \(\varvec{l}' \,{:}{=}\, c\, \varvec{l} / q\) with \(q \,{:}{=}\, \sqrt{4\, r^2\,s}\), so that

$$\begin{aligned} (\varvec{l}\, \hspace{-0.1em}\wedge \hspace{-0.1em}\, \varvec{k} \,\hspace{-0.1em}\wedge \hspace{-0.1em}\, \varvec{j} \,\hspace{-0.1em}\wedge \hspace{-0.1em}\, \varvec{n}_\infty ) (\varvec{n}_\infty \,\,\hspace{-0.1em}\wedge \hspace{-0.1em}{} & {} \varvec{j} \,\hspace{-0.1em}\wedge \hspace{-0.1em}\, \varvec{k} \,\hspace{-0.1em}\wedge \hspace{-0.1em}\, \varvec{l}) \nonumber \\ ={} & {} \frac{q^6}{a^2\, b^2\, c^2}\, (\varvec{l}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l}') \,. \end{aligned}$$
(57)

It follows from Eq. (56) and its analogs for the remaining edges of the in-touch triangle that the inner products among these rescaled vectors are

$$\begin{aligned} \begin{array}{c} \varvec{j}' {\,\varvec{\cdot }\,} \varvec{k}' ~=~ -w / 2 \,,\quad \varvec{j}' {\,\varvec{\cdot }\,} \varvec{l}' ~=~ -v / 2 \,,\quad \varvec{k}' {\,\varvec{\cdot }\,} \varvec{l}' ~=~ -u / 2 \,, \\ \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{j}' ~=~ -a / q \,,\quad \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{k}' ~=~ -b / q \,,\quad \varvec{n}_\infty {\,\varvec{\cdot }\,} \varvec{l}' ~=~ -c / q \,. \end{array} \end{aligned}$$
(58)

The determinant of the resulting matrix of inner products therefore assumes the relatively simple form:

$$\begin{aligned} {}{} & {} {} -(\varvec{l}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{n}_\infty ) (\varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k}' \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l}') \nonumber \\ {}{}{} & {} \quad {} = \frac{-1}{q^2}\; \mathrm {det\!} \begin{bmatrix} 0&{}{} v\!+\!w &{}{} u\!+\!w &{}{} u\!+\!v \\ v\!+\!w &{}{}0&{}{}-w/2&{}{}-v/2 \\ u\!+\!w &{}{}-w/2&{}{}0&{}{}-u/2 \\ u\!+\!v &{}{}-v/2&{}{}-u/2&{}{}0 \end{bmatrix} \nonumber \\{}{} & {} {}\quad = \frac{-1}{q^2}\; \mathrm {det\!} \begin{bmatrix} 4(u\!+\!v\!+w) &{}{} 0&{}{}0&{}{}0 \\ 0&{}{}0&{}{}-w/2&{}{}-v/2 \\ 0&{}{}-w/2&{}{}0&{}{}-u/2 \\ 0&{}{}-v/2&{}{}-u/2&{}{}0 \end{bmatrix} \nonumber \\ {}{}{} & {} {}\quad = \frac{u+v+w}{2\,q^2}\; \mathrm {det\!} \begin{bmatrix} 0&{}{}u&{}{}v \\ u&{}{}0&{}{}w \\ v&{}{}w&{}{}0 \end{bmatrix} ~=~ \Omega (u,v,w) / (8\, r^2) \end{aligned}$$
(59)

(where the last equality follows from the definitions of q and s, and \(\Omega \) is as defined following Eq. (54)). Together with Eq. (57), this gives us

$$\begin{aligned} -\, \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} \Vert ^2 ~=~ \frac{{(4\,r^2 s)}^2\, s\, \Omega (u,v,w)}{2\, a^2\, b^2\, c^2} \,. \end{aligned}$$
(60)

Finally, on squaring both sides of Eq. (54), multiplying through by , and substituting for using Eq. (60) together with \(r = t / s\), we obtain

$$\begin{aligned} \begin{aligned} 4\, t^2 ~&{:}{=}~ -\, \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c}\hspace{1pt} \Vert ^2 ~=~ -\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l}\hspace{1pt} \Vert ^2\, \frac{a^2\, b^2\, c^2}{\Omega (u,v,w)^2} \\ {}&=~ \frac{{(4\, r^2 s)}^2\, (s/2)}{\Omega (u,v,w)} ~=~ \frac{8\, t^4 / s}{\Omega (u,v,w)} \\ {}&\implies \quad t^2 ~=~ s\, \Omega (u,v,w) / 2 \quad \Longleftrightarrow \quad r^2 ~=~ \Omega (u,v,w) / (2\, s) \,. \end{aligned} \end{aligned}$$
(61)

This derivation of Heron’s formula is, of course, quite painful as compared to, for example, just factorizing the three-point Cayley-Menger determinant \(-\, \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \Vert ^2\) as in Eq. (34). Its advantage is that it can be generalized to higher dimensions, as will now be shown for tetrahedra.

6 A Natural Extension of Heron’s Formula to Tetrahedra

Fig. 6
figure 6

Two views of a tetrahedron \(\llbracket \textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\rrbracket \subset \mathbb R^3\) with vertices labeled as \(\mathsf A, \mathsf B, \mathsf C, \mathsf D\), respectively, showing how its in-sphere (green) with in-center \(\mathsf I\) determines its natural parameters. These are defined as (twice) the areas of the congruent pairs of triangles into which its facets are partitioned by their in-touch points: \(\mathsf J\) (on the facet) opposite to \(\mathsf A\), \(\mathsf K\) opposite to \(\mathsf B\), \(\mathsf L\) opposite to \(\mathsf C\) and \(\mathsf M\) opposite to \(\mathsf D\), in perfect analogy with how the Heron parameters of a triangle are determined by its in-circle (cf. Fig. 5). The equal distances from each vertex to its three adjacent in-touch points are drawn in the same color as the vertex, and the medial parallelogram separating \(\llbracket \textbf{a}, \textbf{b}\rrbracket \) from \(\llbracket \textbf{c}, \textbf{d}\rrbracket \) has been shaded in light brown

One well-known extension of Heron’s formula to tetrahedra may be found in the four-point Cayley-Menger determinant \(-\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}\, \Vert ^2\), which gives the squared volume as a homogeneous cubic polynomial in the squared inter-vertex distances. Unfortunately, this four-point determinant is an irreducible polynomial (in the language of commutative algebra), meaning it cannot be factorized like the three-point determinant was in Eq. (34). Consequently, this algebraic expression does not provide much insight into the geometric structure of its locus (set of zeros), any more than it did when Nicolo Tartaglia discovered a rational version of it in the sixteenth century.Footnote 6

In contrast, the extension given here (which was first derived by the author in Part II of Ref. [14]) expresses the fourth power of the volume as a polynomial in the tetrahedral analogs of the Heron parameters of a triangle, which in turn are simple rational functions of the areas of the tetrahedron’s four exterior and three interior (medial parallelogram) faces. Unlike Heron’s and Tartaglia’s formulae, moreover, its locus turns out to be a new kind of four-point configuration which is, in some sense, another boundary for the set of all full-dimensional Euclidean tetrahedra that differs greatly from the usual boundary (planar quadrilaterals). These configurations exhibit infinite inter-vertex distances and so cannot be realized in physical space, even though they are perfectly well defined mathematically by the (finite) values of their areas. This will be further discussed at the end of this section (and was studied in depth in Part III of Ref. [14]).

Triangles and tetrahedra nevertheless do have a great deal in common. In particular, the in-radius r of the in-sphere of a tetrahedron \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \subset \mathbb R^3\) satisfies \(r = t / s\) where t is now six (3!) times its volume and s is twice its (exterior) surface area.Footnote 7 Also, as can be seen in Fig. 6, the in-sphere “touches” the tetrahedron’s four facets (or exterior faces) at points \(\textbf{j}\in \llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \), \(\textbf{k}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \), \(\textbf{l}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{d}\hspace{0.5pt}\rrbracket \), \(\textbf{m}\in \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}\hspace{0.5pt}\rrbracket \) which divide those facets into three triangles each. Finally, just as with triangles, the Pythagorean theorem shows that the distances from each vertex to its three adjacent in-touch points are all equal, and this in turn implies the pairs of such “contact triangles” sharing a common edge of the tetrahedron are congruent, giving rise to only six independent areas. Accordingly, the natural parameters of the tetrahedron will be defined as twice these areas’ values [14, Part II], specifically

(62)

If we denote twice the areas of the facets opposite to the vertices \(\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\) by abcd respectively, then in analogy to Eq. (49) the in-center of the tetrahedron is the barycentric sum of its vertices given by

$$\begin{aligned} \textbf{i}~=~ \frac{a}{s}\, \textbf{a}+ \frac{b}{s}\, \textbf{b}+ \frac{c}{s}\, \textbf{c}+ \frac{d}{s}\, \textbf{d}~. \end{aligned}$$
(63)

In analogy to Eq. (51), moreover, the in-touch points are given by the barycentric sums

$$\begin{aligned} \begin{aligned} {\textbf {j}}{}&{} ~=~ \frac{z}{a}\, {\textbf {b}}+ \frac{y}{a}\, {\textbf {c}}+ \frac{x}{a}\, {\textbf {d}}~,\quad {}&{} {\textbf {k}} ~=~ \frac{z}{b}\, {\textbf {a}}+ \frac{w}{b}\, {\textbf {c}}+ \frac{v}{b}\, {\textbf {d}}~, \\ {\textbf {l}}{}&{} ~=~ \frac{y}{c}\, {\textbf {a}}+ \frac{w}{c}\, {\textbf {b}}+ \frac{u}{c}\, {\textbf {d}}~,\quad {}&{} {\textbf {m}} ~=~ \frac{x}{d}\, {\textbf {a}}+ \frac{v}{d}\, {\textbf {b}}+ \frac{u}{d}\, {\textbf {c}}~, \end{aligned} \end{aligned}$$
(64)

wherein the natural parameters satisfy the linear equations

$$\begin{aligned} a = x\!+\!y\!+\!z,\quad b = v\!+\!w\!+\!z,\quad c = u\!+\!w\!+\!y,\quad d = u\!+\!v\!+\!x ~. \end{aligned}$$
(65)

The main obstacle to extending Heron’s formula to tetrahedra stems from the fact that these four equations do not uniquely determine the six natural parameters, as the corresponding relations (\(a = v\!+\!w\), \(b = u\!+\!w\), \(c = u\!+\!v\)) between the edge lengths and the Heron parameters of a triangle did.

Like the in-circle of a triangle (Eq. (50)), the dual representation of the in-sphere of a tetrahedron in \(\mathcal G_{4,1}\) can be written as

$$\begin{aligned} \varvec{r}= & {} {} \varvec{i} - \varvec{n}_\infty \, r^2 / 2 ~ \\ {}&{:}{=}&{} (a\,\varvec{a} + b\,\varvec{b} + c\, \varvec{c} + d\, \varvec{d}) / s \,+\, \varvec{n}_\infty (( ab\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} +\cdots + cd\ \varvec{c} {\,\varvec{\cdot }\,} \varvec{d} - t^2/2) / s^2 \nonumber \end{aligned}$$
(66)

but now abcd are areas not distances while \(\textbf{a} \varvec{\cdot } \textbf{b}\) etc. are still (negative one half times the) squared inter-vertex distances. This makes the geometric interpretation of the correction term \(\varvec{n}_\infty (ab\, \varvec{a} {\,\varvec{\cdot }\,} \varvec{b} +\cdots + cd\, \varvec{c} {\,\varvec{\cdot }\,} \varvec{d})\) relatively challenging. Fortunately, because the outer product with \(\varvec{n}_\infty \) wipes out this term, Eqs. (64) still allow us to express the conformal oriented volume of the in-touch tetrahedron as

$$\begin{aligned} \begin{aligned} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{m} ~\qquad \qquad \\ =\big ( \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}(z\, \varvec{b} + y\, \varvec{c} + x\, \varvec{d}) {}&{} \hspace{-0.1em}\wedge \hspace{-0.1em}(z\, \varvec{a} + w\, \varvec{c} + v\, \varvec{d}) \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \\ \cdots (y\, \varvec{a} + w\, \varvec{b} + u\, \varvec{d}) {}&{} \hspace{-0.1em}\wedge \hspace{-0.1em}(x\, \varvec{a} + v\, \varvec{b} + u\, \varvec{c}) \big ) \,/\, (abcd) ~, \end{aligned} \end{aligned}$$
(67)

which in a fashion similar to Eq. (54) works out to just

$$\begin{aligned} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{m} ~=~ -\frac{\Omega (u,v,w,x,y,z)}{abcd}\; \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d} ~, \end{aligned}$$
(68)

where \(\Omega (u,v,w,x,y,z) \,{:}{=}\, 2\, (uvyz + uwxz + vwxy) - (uz)^2 - (vy)^2 - (wx)^2\). (The minus sign in front means that the orientation of the in-touch tetrahedron \(\llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{j}, \textbf{k}, \textbf{l}, \textbf{m}\hspace{0.5pt}\rrbracket \) is opposite to that of the original.)

Thus we arrive, much we did above with triangles, at the problem finding the volume of the “in-touch tetrahedron,” or of evaluating the Cayley-Menger determinant \(-\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{m}\, \Vert ^2\) of the in-touch points. This requires us to find expressions for its squared inter-vertex distances \(\Vert \hspace{0.5pt}{} {\textbf {j}}- {\textbf {k}}\Vert ^2 = -2\, \varvec{j} {\,\varvec{\cdot }\,} \varvec{k}\), etc. Note, however, that this time the formula we seek is a polynomial in the natural parameters of a tetrahedron, which are areal magnitudes that cannot be expressed as rational functions of the squared distances in either the in-touch tetrahedron or the original (square roots must be extracted to do that). The squared distances among the vertices of the in-touch tetrahedron can nevertheless be obtained by an approach that is quite similar to that taken for the in-touch triangle in the previous section, but using the areal law of cosines (38) instead of the usual one as in Eq. (56), e.g.

$$\begin{aligned} {}{} & {} {} \Vert \, {\textbf {j}}- {\textbf {k}}\,\Vert ^2 \,=~ \Vert \, {\textbf {j}}- {\textbf {i}}\, \Vert ^2 + \Vert \, {\textbf {k}}- {\textbf {i}}\,\Vert ^2 -\, 2\, (\hspace{0.5pt}{} {\textbf {j}}- {\textbf {i}}) {\,\varvec{\cdot }\,}({\textbf {k}}- {\textbf {i}})\nonumber \\ {}{} & {} \quad {} = 2\, r^2\, (1 + \cos (\varphi _\textsf {cd})) \,=\, 2\, r^2\, (ab + (a^2 + b^2 - e^2) / 2) / (ab) \nonumber \\{}{} & {} \quad {} = r^2\, ((a\!+\!b)^2 - e^2) / (ab) \,=\, r^2\, (a\!+\!b\!+\!e)(a\!+\!b\!-\!e) / (ab) \,=\, 2\, r^2 s\, Z / (ab)\nonumber \\\end{aligned}$$
(69)

where \(\varphi _\textsf{cd}\) is now the (internal) dihedral angle between the planes and , \(e \,{:}{=}\, \Vert ({\textbf {b}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {c}}) \Vert \) is four times the area of the medial parallelogram as defined after Eq. (22), and \(Z \,{:}{=}\, (a\!+\!b\!+\!e) (a\!+\!b\!-\!e) / (2\,s)\). All that is required to make the analogy between this equation and the corresponding equation (56) for triangles complete is \(Z = z\), where z is the natural parameter of the tetrahedron defined above as \(2\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{j}\hspace{0.5pt}\rrbracket \varvec{|}= 2\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{k}\hspace{0.5pt}\rrbracket \varvec{|}\).

A direct derivation of these algebraic incarnations of the natural parameters as rational functions of the seven areas \(a, b, c, d, e, f \,{:}{=}\, \Vert ({\textbf {c}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {b}}) \Vert \) and \(g \,{:}{=}\, \Vert ({\textbf {d}}- {\textbf {a}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {b}}) \Vert \) may be found in the Part II of the original reference [14]. It utilized classical three-dimensional vector algebra and basic trigonometry together with the areal laws of sines and cosines, which after several long pages of algebra yielded the results:

$$\begin{aligned} \begin{aligned} u {}&{} ~=~ (c\!+\!d\!+\!e) (c\!+\!d\!-\!e) / (2\, s) ~,\quad {}&{} z ~=~ (a\!+\!b\!+\!e) (a\!+\!b\!-\!e) / (2\, s) ~, \\ v {}&{} ~=~ (b\!+\!d\!+\!f) (b\!+\!d\!-\!f) / (2\, s) ~,\quad {}&{} y ~=~ (a\!+\!c\!+\!f) (a\!+\!c\!-\!f) / (2\, s) ~, \\ w {}&{} ~=~ (b\!+\!c\!+\!g) (b\!+\!c\!-\!g) / (2\, s) ~,\quad {}&{} x ~=~ (a\!+\!d\!+\!g) (a\!+\!d\!-\!g) / (2\, s) ~. \end{aligned} \end{aligned}$$
(70)

The non-negativity of the numerators in these expressions follows from the triangle inequality for Euclidean bivectors, namely \(\textbf{A}= \textbf{B}+ \textbf{C}\implies \Vert \textbf{A}\Vert \le \Vert \textbf{B}\Vert + \Vert \textbf{C}\Vert \), applied to Eq. (36) and its analogs with the other facets and interior faces; this constitutes a heretofore unremarked extension of the triangle inequality from line-bound vectors in the plane to plane-bound bivectors in space.Footnote 8

Instead of reformulating that derivation in \(\mathcal G_{4,1}\), here we give a conceptually simpler and rather more geometric (although unfortunately not much more compact) derivation of these formulae. This new derivation is based upon the consistency of two different expressions for the squared inter-vertex distances in the in-touch tetrahedron, where an example of the first may be found in Eq. (69) and the second are the three-dimensional analogs of the expressions given in Eq. (55) for those squared distances in the in-touch triangle. These analogs are based upon the congruence of the pairs of contact triangles meeting in a common edge as in Eq. (62) (see also Fig. 6), which implies the congruence of the six pairs of sub-tetrahedra given by

$$\begin{aligned} \begin{aligned} \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{i}, \textbf{l}\, \hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{i}, \textbf{m}\hspace{0.5pt}\rrbracket ~,\qquad \llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\, \hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{k}\hspace{0.5pt}\rrbracket ~, \\ \llbracket \hspace{0.5pt}\textbf{a}, \textbf{c}, \textbf{i}, \textbf{k}\hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{a}, \textbf{c}, \textbf{i}, \textbf{m}\hspace{0.5pt}\rrbracket ~,\qquad \llbracket \hspace{0.5pt}\textbf{b}, \textbf{d}, \textbf{i}, \textbf{j}\, \hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{b}, \textbf{d}, \textbf{i}, \textbf{l}\, \hspace{0.5pt}\rrbracket ~, \\ \hspace{-0.5em} \llbracket \hspace{0.5pt}\textbf{a}, \textbf{d}, \textbf{i}, \textbf{k}\, \hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{a}, \textbf{d}, \textbf{i}, \textbf{l}\, \hspace{0.5pt}\rrbracket \hspace{0.75em},\qquad \llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{i}, \textbf{j}\, \hspace{0.5pt}\rrbracket ~\approx ~ \llbracket \hspace{0.5pt}\textbf{b}, \textbf{c}, \textbf{i}, \textbf{m}\hspace{0.5pt}\rrbracket \end{aligned} \end{aligned}$$
(71)

(whose disjoint union is \(\llbracket \hspace{0.5pt}\textbf{a}, \textbf{b}, \textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \)). The orthogonality of the lines spanned by the in-center and each in-touch point (cf. Fig 7) to the facet containing the latter ensures that these are all “right tetrahedra” at their respective in-touch points.

Taking \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\, \hspace{0.5pt}\rrbracket \) as an example, Minkowsi’s identity (46) implies that

$$\begin{aligned} (\textbf{c}\hspace{-1pt}-\hspace{-1pt} \textbf{i}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}\hspace{-1pt}-\hspace{-1pt} \textbf{i}) \,=\, (\textbf{c}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) - (\textbf{i}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) + (\textbf{i}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) \end{aligned}$$
(72)

or, upon taking the inner-squares of both sides and noticing that the inner products of \((\textbf{c}\hspace{-1pt}-\hspace{-1pt} \textbf{j}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}\hspace{-1pt}-\hspace{-1pt} \textbf{j})\) with the other two terms on the right vanish as a consequence of \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\hspace{1pt} \hspace{0.5pt}\rrbracket \) being a right tetrahedron at \(\textbf{j}\), that

$$\begin{aligned} {}{} & {} {} \hspace{-2em} \Vert ({\textbf {c}}- {\textbf {i}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {i}}) \Vert ^2 ~\nonumber \\{}{} & {} {} \quad = \Vert ({\textbf {c}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {j}}) \Vert ^2 + \Vert ({\textbf {i}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {j}}) \Vert ^2 + |({\textbf {i}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {j}}) \Vert ^2 \\{}{} & {} {}\qquad \qquad \qquad \qquad \qquad \,\, +~ 2\, \big ( ({\textbf {i}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {c}}- {\textbf {j}}) \big ) {\varvec{\cdot }}\big ( ({\textbf {i}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {j}}) \big ). \nonumber \end{aligned}$$
(73)

By the areal law of cosines (38), however, the sum of the last three terms on the right is just \(\Vert (\textbf{i}- \textbf{j}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{c}- \textbf{d}) \Vert ^2\), which in turn is \(\Vert \hspace{0.5pt} \textbf{i}- \textbf{j}\hspace{0.5pt}\Vert ^2 \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2\) by the orthogonality of to . Recalling that \(r = \Vert \hspace{0.5pt} \textbf{i}- \textbf{j}\hspace{0.5pt}\Vert \) and \(z \,{:}{=}\, \Vert ({\textbf {c}}- {\textbf {j}}) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {d}}- {\textbf {j}}) \Vert \), this leads to the following areal analog of the Pythagorean theorem (cf. Fig. 7),

$$\begin{aligned} \Vert (\textbf{c}- \textbf{i}) \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{d}- \textbf{i}) \Vert ^2 ~=~ z^2 + r^2\, \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2 ~, \end{aligned}$$
(74)

with similar equations for all the remaining pairs of congruent right tetrahedra listed in Eq. (71).

Fig. 7
figure 7

Drawing of the right-tetrahedron \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\hspace{1pt} \hspace{0.5pt}\rrbracket \), with vertices labeled \(\mathsf C, \mathsf D, \mathsf I, \mathsf J\) resp. The medial parallelogram of \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{c} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{d}\) and \(\varvec{n}_\infty \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{i} \hspace{-0.05em}\wedge \hspace{-0.05em}\varvec{j}\), with vertices labeled \(\mathsf E, \mathsf F, \mathsf G, \mathsf H\) and an area of \(\Vert \textbf{i}- \textbf{j}\Vert \, \Vert \textbf{c}- \textbf{d}\Vert \,/\, 4\), is drawn in red, while an enveloping right-parallelopiped, wherein \(\mathsf I', \mathsf J'\) are obtained by \(\pi \)-rotations of \(\mathsf I, \mathsf J\) about the perpendicular line through the midpoint \(\mathsf P\) of \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \), is in green

Next, note that again as a consequence of \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\hspace{1pt} \hspace{0.5pt}\rrbracket \) being a right tetrahedron at \(\textbf{j}\), its volume \(\varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}, \textbf{j}\hspace{1pt} \hspace{0.5pt}\rrbracket \varvec{|}\) is simply \(\varvec{|}\llbracket \hspace{0.5pt}\hspace{0.5pt}\textbf{i}, \textbf{j}\hspace{0.5pt} \hspace{0.5pt}\rrbracket \varvec{|}\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{j}\hspace{0.5pt} \hspace{0.5pt}\rrbracket \varvec{|}\,/\, 3 = r\, z \,/\, 6\). Much as we saw for a triangle in Fig. 5, however, the plane bisects the dihedral angle at \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}\hspace{0.5pt}\rrbracket \) and is also the perpendicular bisector of the edge \(\llbracket \hspace{0.5pt}\textbf{j}, \textbf{k}\hspace{0.5pt}\rrbracket \) of the in-touch tetrahedron, so that the height \(h_\textsf{j;cdi}\) of \(\textbf{j}\) over \(\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}\hspace{1pt} \hspace{0.5pt}\rrbracket \) is \(\Vert \hspace{0.5pt} \textbf{j}- \textbf{k}\hspace{0.5pt}\Vert / 2\). From this together with Eq. (74), we obtain

$$\begin{aligned} h_\textsf{j;cdi} ~=~ \frac{6\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i},\hspace{0.5pt} \textbf{j}\hspace{1pt} \hspace{0.5pt}\rrbracket \varvec{|}}{2\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{c}, \textbf{d}, \textbf{i}\hspace{1pt} \hspace{0.5pt}\rrbracket \varvec{|}} \quad \Leftrightarrow \quad \Vert \hspace{1pt} \textbf{j}- \textbf{k}\hspace{1pt}\Vert ^2 ~=~ \frac{4\, r^2\, z^2}{z^2 + r^2\, \Vert \hspace{1pt} \textbf{c}- \textbf{d}\hspace{1pt}\Vert ^2} ~. \end{aligned}$$
(75)

The other five analogs of the formulae (56) for a triangle now follow from the permutational symmetry of the equations. Upon equating this new expression for \(\Vert \textbf{j}- \textbf{k}\Vert ^2\) with the one in Eq. (69), we find that

$$\begin{aligned} \frac{Z s}{ab} ~=~ \frac{\Vert \hspace{1pt} \textbf{j}- \textbf{k}\hspace{0.5pt}\Vert ^2}{2\, r^2} ~=~ \frac{2\, z^2}{z^2 + r^2\, \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2} \quad \Leftrightarrow \quad z^2 ~=~ \frac{Z\, s\, r^2\, \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2}{2\, ab - Z\, s} \,, \end{aligned}$$
(76)

where \(Z \,{:}{=}\, (a \!+\! b \!+\! e) (a \!+\! b \!-\! e) / (2s)\) as above. Our next task is to show that this implies the natural parameter \(z = Z\).

To do so we employ the areal law of sines for free bivectors, first by taking squared norms on both sides of Eq. ( 39) with \(\textbf{X}= \textbf{c}- \textbf{d}\), \(\textbf{y}= \textbf{b}- \textbf{d}\), \(\textbf{z}= \textbf{a}- \textbf{d}\), and then using the second equality of Eq. (40) followed by the areal law of cosines (38) to substitute for the squared sine in the result, obtaining

$$\begin{aligned} \begin{aligned} t^2\, \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2 ~=~ {}&{} a^2\, b^2 \big ( 1 - \cos (\varphi _\textsf{cd})^2 \big ) ~=~ a^2\, b^2 - \big ( a^2 + b^2 - e^2 \big )^2 /\, 4 \\ =~ {}&{} (a\!+\!b\!+\!e) (a\!+\!b\!-\!e) (a\!-\!b\!+\!e) (-a\!+\!b\!+\!e) \,/\, 4 \,, \end{aligned} \end{aligned}$$
(77)

where t, ab and e are all defined as above. The obvious resemblance of the right-hand side to Heron’s formula means it is equal, as a polynomial, to a Cayley-Menger determinant in the areas abe rather than the distances.Footnote 9

Finally, we use Eq. (77) plus \(r = t / s\) to eliminate \(r^2\, \Vert \hspace{0.5pt} \textbf{c}- \textbf{d}\hspace{0.5pt}\Vert ^2\) from the numerator on the right-hand side of Eq. (76), and we use the definition of Z to eliminate it from the denominator, which gives us

$$\begin{aligned} z^2 ~=~ Z\, \frac{(a\!+\!b\!+\!e) (a\!+\!b\!-\!e) (a\!-\!b\!+\!e) (-a\!+\!b\!+\!e) \,/\, 4}{s\, (a\!-\!b\!+\!e) (-a\!+\!b\!+\!e) \,/\, 2} ~=~ Z^2 ~. \end{aligned}$$
(78)

The result now follows on taking positive square roots of both sides; similar derivations can of course also be given for all of the formulae in Eq. (70).Footnote 10

Now that we have validated these explicit formulae for the natural parameters in terms of the areas of the seven faces of the tetrahedron, we can use Eq. (69) together with its obvious analogs for the other squared distances among the in-touch points to compute the volume of the in-touch tetrahedron much as was done for the area of the in-touch triangle in the previous section. Utilizing rescaled versions of the conformal in-touch points just like we did with the in-touch triangle (cf. Eqs. (58) and (59)) together with \(s/2 = u \!+\! v \!+\! w \!+\! x \!+\! y \!+\! z\) (cf. Eq. (65)), one can readily show that

$$\begin{aligned} {}{} & {} {} \hspace{-2em} -\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{k} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{l} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{m} \Vert ^2 ~= \frac{{(-2\, r^2 s)}^3}{a^2\, b^2\, c^2\, d^2} \cdots \nonumber \\{}{} & {} {} \mathrm {det\!} \begin{bmatrix} 0 &{}{} x\!+\!y\!+\!z &{}{} v\!+\!w\!+\!z &{}{} u\!+\!w\!+\!y &{}{} u\!+\!v\!+\!x \\ x\!+\!y\!+\!z &{}{} 0 &{}{} -z/2 &{}{} -y/2 &{}{} -x/2 \\ v\!+\!w\!+\!z &{}{} -z/2 &{}{} 0 &{}{} -w/2 &{}{} -v/2 \\ u\!+\!w\!+\!y &{}{} -y/2 &{}{} -w/2 &{}{} 0 &{}{} -u/2 \\ u\!+\!v\!+\!x &{}{} -x/2 &{}{} -v/2 &{}{} -u/2 &{}{} 0 \end{bmatrix} \\{}{} & {} {} \hspace{6.8em} =~ \frac{{(r^2 s)}^3\, s\, \Omega (u,v,w,x,y,z)}{a^2\, b^2\, c^2\, d^2} \nonumber \end{aligned}$$
(79)

Then, on substituting this result into the equation obtained by taking the squared norms of both sides of Eq. (68), we arrive at long last at our extension of Heron’s formula to tetrahedra (cf. Eq. (61)):

$$\begin{aligned} {}&{} \>\> \begin{aligned} t^2 \,{:}{=}\, -\!\Vert \varvec{n}_\infty \!\wedge \! \varvec{a} \!\wedge \! \varvec{b} \!\wedge \! \varvec{c} \!\wedge \! \varvec{d}\hspace{0.5pt} \Vert ^2&\,= -\Vert \varvec{n}_\infty \!\wedge \! \varvec{j} \!\wedge \! \varvec{k} \!\wedge \! \varvec{l} \!\wedge \! \varvec{m} \Vert ^2\, \frac{a^2\, b^2\, c^2\, d^2}{\Omega (u,v,w,x,y,z)^2} \\ {}&= ~ \frac{{(r^2 s)}^3\, s}{\Omega (u,v,w,x,y,z)} ~=~ \frac{t^6 \,/\, s^2}{\Omega (u,v,w,x,y,z)} \end{aligned} \nonumber \\{}&{} \implies ~ t^4 ~=~ s^2\, \Omega (u,v,w,x,y,z) ~\Longleftrightarrow ~ r^4 ~=~ \Omega (u,v,w,x,y,z) / s^2 \end{aligned}$$
(80)

In a fashion that closely resembles how Ptolemy’s inequalities among the distances can be derived by factorizing \(-\Vert \varvec{a} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{b} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{c} \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{d}\hspace{1pt} \Vert ^2\) as a polynomial in the squared inter-vertex distances [4], the polynomial \(\Omega (u,v,w,x,y,z)\) can be written as a product of four factors each of which is linear in the products of the square roots \(\hat{u} \,{:}{=}\, \sqrt{u},\, \ldots \,,\, \hat{z} \,{:}{=}\,\sqrt{z}\) of “opposite” pairs of natural parameters [14, Part II, Remark 4]), specifically:

$$\begin{aligned} {}{} & {} {} \hspace{-1em} \Omega (\hat{u}^2, \hat{v}^2, \hat{w}^2, \hat{x}^2, \hat{y}^2, \hat{z}^2) \\{}{} & {} {} =~ (\hat{u}\hat{z} + \hat{v}\hat{y} + \hat{w}\hat{x}) (\hat{u}\hat{z} + \hat{v}\hat{y} - \hat{w}\hat{x})(\hat{u}\hat{z} - \hat{v}\hat{y} + \hat{w}\hat{x})(-\hat{u}\hat{z} + \hat{v}\hat{y} + \hat{w}\hat{x}) \nonumber \end{aligned}$$
(81)

At least one of the last three factors must vanish whenever \(\Omega = 0\), and the similarity between those expressions and the Plücker identity among the Plücker coordinates (as in Eq. (29)), which defines the famous Klein quadric \(\mathcal K \,{:}{=}\, \{ {\textbf {p}}\in \mathbb R^6 \!\mid \! p_1 p_6 - p_2 p_5 + p_3 p_4 = 0 \}\), is more than a coincidence. In fact the zeros of \(\Omega \) are canonically homeomorphic to a quotient of the Klein quadric by the action of a discrete group of reflections isomorphic to \(\mathbb Z_2^4\) on the Plücker coordinates. Moreover, within that five-parameter manifold lives a three-parameter sub-manifold homeomorphic to the set of all quadruples of points in the special (area invariant) affine plane [14, Part III].

The most astounding thing, though, is that the points of this manifold are the limits of a sequence of affine transformations with diagonal matrices \(\textbf{Diag}(\, \varepsilon _i, 1/\varepsilon _i, 1/\varepsilon _i )\), applied to any “generic” (random) tetrahedron in \(\mathbb R^3\), with \(\varepsilon _i \rightarrow +\infty \) as \(i \rightarrow \infty \). Such a sequence acts asymptotically on the (exterior and interior) faces as an area-preserving affine squeeze \(\textbf{Diag}(\varepsilon , 1/\varepsilon )\) in the plane of each face, so that the areas in such a sequence of tetrahedra converge to well-defined finite values. In the process, however, the tetrahedra volumes go to zero while their inter-vertex distances approach infinity. The ratios of these distances nevertheless remain well defined, and any finite distances with those same ratios correspond to four points on the Euclidean line \(\mathbb R^1 \approx \mathbb R\). Non-generic tetrahedra with one or more edges perpendicular to the first coordinate axis generate sequences that also converge to zeros of \(\Omega \) wherein the corresponding distances are zero, and when the initial tetrahedron lies in any plane not perpendicular to that axis, the resulting zero corresponds to a quadruple in the special affine plane as above.

The generic zeros clearly correspond to limiting cases of the equi-volume sets of tetrahedra defined by skew pairs of line-bound vectors or to those defined by a plane-bound bivector together with an out-of-plane flat point, as described in Secs. 3 and 4, respectively. The difference is that, while the inter-vertex distances in those sets can also approach infinity, when the volume of the tetrahedra is non-zero this is accompanied by all but one of the seven areas also becoming infinite. In Appendix B of [14, Part IV], I conjectured that there is a canonical one-to-one mapping between the zeros of \(\Omega \) and planar Euclidean quadrilaterals, where the former are the limits of sequences of affine transformations as above and the latter are orthogonal projections of the tetrahedra onto the plane perpendicular to the first coordinate axis. Otherwise, the very existence of such “areally degenerate” tetrahedra begs the question: Is Flatland a bigger place than A. Square ever knew [29]?Footnote 11

7 Heron’s Formula for \(\varvec{n}\)-Dimensional Simplices

Based upon the above insights into the geometric interpretation of Heron’s formula and its extension to three dimensions, it is not hard to see how it generalizes to higher dimensions. Given an n-simplex \(\llbracket \hspace{0.5pt}\textbf{a}_0,\, \textbf{a}_1,\, \textbf{a}_2,\, \ldots ,\, \textbf{a}_n \hspace{0.5pt}\rrbracket \subset \mathbb R^n\), let \(a_k \,{:}{=}\, \varvec{|}\llbracket \hspace{0.5pt}{} {\textbf {a}}_0,\, \ldots ,\, \check{{\textbf {a}}}_k,\, \ldots ,\, {\textbf {a}}_n \hspace{0.5pt}\rrbracket \varvec{|}\) be the “hyper-area” of the facet opposite to \(\textbf{a}_k\) for \(k = 0,\, \ldots ,\, n\),Footnote 12\(s_n \, := \, (n-1)!\, \sum _k a_k\) be its normalized surface hyper-area, and \(t_n \,{:}{=}\, n!\, \varvec{|}\llbracket \hspace{0.5pt}\textbf{a}_0\, ,\ldots , \mathbf \, {\textbf {a}}_n \hspace{0.5pt}\rrbracket \varvec{|}\) be its normalized hyper-volume. Via considerations analogous to those for triangles and tetrahedra above, it is easily seen that the in-radius of the n-simplex is again \(r_n = t_n / s_n\). Also let \(\textbf{i}= (n\!-1\!)!\, \sum _k a_k\, \textbf{a}_k / s_n\) be the in-center of the n-simplex and \(\textbf{j}_k \in \llbracket \hspace{0.5pt}\textbf{a}_0,\, \ldots ,\, \check{\textbf{a}}_k,\, \ldots ,\, \textbf{a}_n \hspace{0.5pt}\rrbracket \) be the “in-touch points” at which its in-sphere intersects its facets. In perfect analogy to triangles and tetrahedra, each facet of the n-simplex is divided into n sub-simplices \(\llbracket \hspace{0.5pt}\textbf{a}_0,\, \ldots ,\, \check{\textbf{a}}_k,\, \ldots ,\, \check{\textbf{a}}_\ell ,\, \ldots ,\, \textbf{a}_n,\, \textbf{j}_k \hspace{0.5pt}\rrbracket \) (\(0 \le \ell \ne k \le n\)) by its in-touch point and, because \(\Vert \, \textbf{i}- \textbf{j}_k \Vert = r_n\) for all k, the Pythagorean theorem shows that the distances \(\Vert \, \textbf{j}_k - \textbf{a}_\ell \Vert \) (\(k \ne \ell \)) from each vertex to its n adjacent in-touch points are once more all equal. This in turn implies that these “contact \((n\!-\!1)\)-simplices” are again congruent whenever they intersect in a common \((n\!-\!2)\)-dimensional face \(\llbracket \hspace{0.5pt}\textbf{a}_0,\, \ldots ,\, \check{\textbf{a}}_k,\, \ldots ,\, \check{\textbf{a}}_\ell ,\, \ldots ,\, \textbf{a}_n \hspace{0.5pt}\rrbracket \). The n-dimensional natural parameters may now be defined as the hyper-areas of these pairs of contact \((n\!-\!1)\)-simplices, now times \((n\!-\!1)!\) to normalize them. Since there are \(n(n\!+\!1)\) such \((n\!-\!1)\)-simplices, there are \(n(n\!+\!1)/2\) natural parameters \(\{\, u_{k\ell } \!=\! u_{\ell k},\, u_{kk} \!=\! 0 \mid k, \ell = 0, \ldots , n \,\}\) in all. Finally, because these natural parameters are the normalized hyper-areas of the members of a partition of each facet, they satisfy \((n\!-\!1)!\, a_k = \sum _\ell u_{k\ell }\) for \(k = 0,\ldots ,n\) and \(s_n = 2\, \sum _{k<\ell } u_{k\ell \,}\).

Given that for \(n = 2\) and 3 the polynomials \(\Omega _n \,{:}{=}\, \Omega \) as above are \((-1)^n\) times the determinant of the matrix of natural parameters, the imputed extension of Heron’s formula to higher dimensions is simply

$$\begin{aligned} t_n^{2(n-1)} =~ s_n^{n-1}\, \Omega _{n} \quad \Longleftrightarrow \quad r_n^{2(n-1)} =~ \Omega _{n} \,/\, s_n^{n-1} ~, \end{aligned}$$
(82)

where \(\Omega _n \,{:}{=}\, (-1)^n\, \text {det}({\textbf {U}}_n) \ge 0\) with \({\textbf {U}}_n \,{:}{=}\, [u_{k\ell }]_{k,\ell =0}^{\,n,n}\) as the matrix of natural parameters [14, Part II, Conjecture 11]. This extension is almost too elegant to doubt, but the question of how best to prove it in full generality remains. In this section we will simply outline the essential formulae needed to derive this extension by an approach which directly generalizes that taken above for \(n = 2\) and 3 dimensions, without taking up the (considerable) space that would be needed for a complete and formal proof.Footnote 13

The determinant multiplication formula shows that the oriented hyper-volume of any n-simplex \(\llbracket \hspace{0.5pt}\, \textbf{b}_0, \textbf{b}_1,\, \ldots ,\, \textbf{b}_n \hspace{0.5pt}\rrbracket \) with vertices given by the barycentric sums \(\textbf{b}_k = \sum _\ell \, \beta _{k\ell }\, \textbf{a}_\ell \) (\(\sum _\ell \beta _{k\ell } = 1\), \(k = 0, \ldots , n\)) of another’s will be related to that of the other by the determinant of the matrix of coefficients \(\textrm{det}[\beta _{k\ell }]\). Thus in analogy to Eq. (68) the conformal oriented hyper-volume of the in-touch n-simplex \(\llbracket \hspace{0.5pt}\, \textbf{j}_0,\, \textbf{j}_1,\, \ldots ,\, \textbf{j}_n \hspace{0.5pt}\rrbracket \) with \(\textbf{j}_k = \sum _\ell u_{k\ell }\, \textbf{a}_\ell / ((n\!-1\!)!\, a_k)\) for all k is related to that of the original as

$$\begin{aligned} \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}_n ~=~ \frac{(-1)^n\, \Omega _n}{\prod _k \big ( (n\!-\!1)!\, a_k \big )}\; \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_n ~, \end{aligned}$$
(83)

where \(\varvec{j}_0,\, \ldots ,\, \varvec{j}_n, \varvec{a}_0,\, \ldots \,, \varvec{a}_n \in \mathcal G_{n+1,1}\) are the corresponding conformal points as usual. Accordingly, we wish to express the squared volume of the in-touch n-simplex as a Cayley-Menger determinant, which requires us to find the squared distances between the in-touch points via the higher-dimensional analogs of Eq. (69). This in turn requires a hyper-areal generalization of the areal law of cosines (38), which may be obtained from the \((n\hspace{-1pt}-\!1)\)-vector analog of the relation among bivectors in Eq. (36), as exemplified by

$$\begin{aligned} ({\textbf {a}}_1 - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em} {}{} & {} {} \cdots \hspace{-0.1em}\wedge \hspace{-0.1em} ({\textbf {a}}_{n\!-\!2} - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {a}}_n - {\textbf {a}}_{n\!-\!1}) ~ \nonumber \\{}{} & {} {} =~ ({\textbf {a}}_1 - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em} \cdots \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {a}}_{n\!-\!2} - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {a}}_n - {\textbf {a}}_0) \; \\{}{} & {} {} \qquad -~ ({\textbf {a}}_1 - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em} \cdots \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {a}}_{n\!-\!2} - {\textbf {a}}_0) \hspace{-0.1em}\wedge \hspace{-0.1em}({\textbf {a}}_{n\!-\!1} - {\textbf {a}}_0) ~. \nonumber \end{aligned}$$
(84)

In analogy with Eq. (23), the norm of the left-hand side of this equation can be shown to be \((n-2)!\, 2^{n-1}\) times the hyper-area of the \((n\hspace{-0.5pt}-\hspace{-1pt}1)\)-dimensional convex polytope \(\llbracket \hspace{0.5pt}\textbf{b}_0,\, \ldots ,\, \textbf{b}_{n\!-\!2}, \textbf{b}_0',\, \ldots ,\, \textbf{b}_{n\!-\!2}' \hspace{0.5pt}\rrbracket \) spanned by the midpoints \({\textbf {b}}_k \,{:}{=}\, ({\textbf {a}}_k + {\textbf {a}}_{n\!-\!1}) / 2\) and \({\textbf {b}}_{k}' \,{:}{=}\, ({\textbf {a}}_k + {\textbf {a}}_{n}) / 2\) of the line segments connecting \(\{ \textbf{a}_0,\, \ldots ,\, \textbf{a}_{n\!-\!2} \}\) with \(\{ \textbf{a}_{n\!-\!1},\, \textbf{a}_n \}\) for \(k = 0, \ldots , n-2\). Because they are also equal to the intersection of the hyper-plane through those midpoints with the n-simplex itself, such polytopes are known as the \((n\!-\!1,2)\)-medial sections of the n-simplex. A general formula for these hyper-areas in terms of the edge lengths of the original simplex is available [30].Footnote 14

Just as we found with tetrahedra, we obtain an instance of the hyper-areal law of cosines by taking squared norms of both sides of Eq. (84) and rearranging. More generally, letting \(\textbf{c}_k \,{:}{=}\, \textbf{a}_k - \textbf{a}_0\) for \(k = 1, \ldots , n\), \(\textbf{C}_k \,{:}{=}\, \textbf{c}_1 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\check{\textbf{c}}_k \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\textbf{c}_n\) and \(\textbf{C}_0 \,{:}{=}\, (\textbf{a}_2 - \textbf{a}_1) \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}(\textbf{a}_n - \textbf{a}_1)\), this hyper-areal law of cosines may be written as

$$\begin{aligned} {\textbf {C}}_k {\,\varvec{\cdot }\,} {\textbf {C}}_\ell ~=~ \Vert {\textbf {C}}_k \Vert \Vert {\textbf {C}}_\ell \Vert \, \cos (\varphi _{k\ell }) ~=~ \tfrac{1}{2}\, \big ( \Vert {\textbf {C}}_k \Vert ^2 + \Vert {\textbf {C}}_\ell \Vert ^2 - \Vert {\textbf {D}}_{k\ell } \Vert ^2 \big ) ~, \end{aligned}$$
(85)

where \(\varphi _{k\ell }\) is the (smaller) angle between the hyper-planes represented by \(\textbf{C}_k\), \(\textbf{C}_\ell \) and \(\textbf{D}_{k\ell } \,{:}{=}\, \textbf{C}_k - \textbf{C}_\ell \) is an \((n\!-\!1)\)-vector representing the hyper-plane containing an \((n\!-\!1,2)\)-medial section of the n-simplex (\(0 \le k < \ell \le n\)). Noting that the barycentric sum for the in-center is \(\textbf{i}= \sum _k c_k\, \textbf{a}_k \,/\, s_n\) with \(c_k \,{:}{=}\, \Vert \textbf{C}_k \Vert = (n\!-1\!)!\, a_k\) and \(s_n \,{:}{=}\, \sum _k c_k\) as above, the higher-dimensional analog of Eq. (69) for the squared distances between in-touch points is

$$\begin{aligned} \Vert \, \textbf{j}_k - \textbf{j}_\ell \Vert ^2 ~{} & {} =~ \Vert \, \textbf{j}_k - \textbf{i}\,\Vert ^2 + \Vert \, \textbf{j}_\ell - \textbf{i}\,\Vert ^2 - 2\, (\hspace{0.5pt}\textbf{j}_k - \textbf{i}) \,{\varvec{\cdot }}\, (\hspace{0.5pt}\textbf{j}_\ell - \textbf{i}) \nonumber \\ \quad \quad{} & {} =~ 2\, r_n^2\, (1 + \cos (\varphi _{k\ell })) ~=~ 2\, r_n^2\, (c_k\, c_\ell + (c_k^2 + c_\ell ^2 - d_{k\ell }^2) / 2)) / (c_k c_\ell ) \nonumber \\{} & {} =r_n^2\, ((c_k + c_\ell )^2 - d_{k\ell }^2) / (c_k c_\ell ) ~=~ 2\, r_n^2\, s_{n}\, U_{k\ell } / (c_k c_\ell ) ~, \end{aligned}$$
(86)

where \(d_{k\ell } \,{:}{=}\, \Vert \textbf{D}_{k\ell } \Vert \), \(\varphi _{k\ell }\) is the angle between the subspaces of \(\textbf{C}_k\), \(\textbf{C}_\ell \), and \(U_{k\ell } \,{:}{=}\, (c_k + c_\ell + d_{k\ell }) (c_k + c_\ell - d_{k\ell }) / (2\, s_n)\). What remains to be shown, just as with the tetrahedron, is that \(U_{k\ell } = u_{k\ell }\), the natural parameter given by the common normalized hyper-area of the two contact \((n\!-\!1)\)-simplices adjacent to the \((n\!-\!2)\)-face \(\llbracket \hspace{0.5pt}\textbf{a}_0,\, \ldots ,\, \check{\textbf{a}}_k,\, \ldots ,\, \check{\textbf{a}}_\ell ,\, \ldots ,\, \textbf{a}_n \hspace{0.5pt}\rrbracket \) of the original simplex.

This may be done using the n-dimensional generalization of Eq. (75),

$$\begin{aligned} \Vert \, \textbf{j}_k - \textbf{j}_\ell \Vert ^2 ~=~ \frac{4\, r_n^2\, u_{k\ell }^2}{u_{k\ell }^2 - r_n^2\, \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\check{\varvec{a}}_k \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\check{\varvec{a}}_\ell \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_n \Vert ^2} ~, \end{aligned}$$
(87)

which can be obtained via geometric considerations entirely analogous to those used in the \(n = 2\) and \(n = 3\) cases above, together with the generalization of Eq. (77) given by:

$$\begin{aligned} {}{} & {} {} -\Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\check{\varvec{a}}_k \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\check{\varvec{a}}_\ell \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{a}_n \Vert ^2\; t_n^2 \\ {}{} & {} {} \qquad =(c_k + c_\ell + d_{k\ell }) (c_k + c_\ell - d_{k\ell }) (c_k - c_\ell + d_{k\ell }) (-c_k + c_\ell + d_{k\ell }) \,/\, 4\nonumber \end{aligned}$$
(88)

The rest of the proof is equally straightforward and likewise perfectly analogous to those given above for the triangle and the tetrahedron: Since \(c_k = \sum _\ell u_{k\ell }\) for \(k = 0, \ldots , n\), the volume of the in-touch n-simplex is given (in the n-dimensional conformal algebra \(\mathcal G_{n\!+\!1,1}\)) by

$$\begin{aligned} -\, \Vert \varvec{n}_\infty \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}_0 \hspace{-0.1em}\wedge \hspace{-0.1em}\cdots \hspace{-0.1em}\wedge \hspace{-0.1em}\varvec{j}_n \Vert ^2 ~=~ \frac{{(r_n^2\, s_{n})}^n\, s_n\, \Omega _n}{\prod _k c_k^2} ~, \end{aligned}$$
(89)

which generalizes Eq. (79). From that together with Eq. (83), we find that the volume of the original n-simplex satisfies the generalization of Eq. (80),

$$\begin{aligned} t_n^2 ~=~ \frac{{(r_n^2\, s_{n})}^n\, s_n}{\Omega _n} ~=~ \frac{t_{\smash {n}}^{2n} / s_n^{n\hspace{-0.25pt}-\hspace{-0.5pt}1}}{\Omega _n} ~, \end{aligned}$$
(90)

which in turn is equivalent to our extension (82) of Heron’s formula to n-dimensional simplices for all \(n > 2\).

It will be interesting to see if the zeros of \(\Omega _n\) with \(n > 3\) also exhibit infinite edge lengths and/or other divergent facial contents, and what the dimension of the subspace of \(\mathbb R^n\) that such degenerate n-simplices live in may be. In four dimensions, for example, there are ten natural parameters \(u_{k\ell } = u_{\ell k}\) (\(0 \le k \ne \ell \le 4\)), the sums of which will determine the volumes (hyper-areas) of the five tetrahedral facets \(c_k = \sum _\ell u_{k\ell }\) as above.Footnote 15  A 4-simplex also has ten (3, 2)-medial sections, which are not parallelopipeds but rather triangular prisms with parallel sides of equal length and parallel congruent triangles at their two ends (which are not necessarily perpendicular to the prism’s axis) [30].Footnote 16 Denoting their volumes (times 16) by \(d_{k\ell }\) as above, we see that \(d_{k\ell }^2 = (c_k + c_\ell )^2 -\, 2\, s_4\, u_{k\ell }\) with \(s_4 = 2\, \sum _{k<\ell } u_{k\ell }\). It follows that the (normalized) volumes \(u_{k\ell }\) of the contact tetrahedra determine those of the exterior and interior faces \(c_k\) and \(d_{k\ell }\) together, and vice versa. In addition to these volumes there are also ten areas for the 2-faces of the 4-simplex, as well as ten inter-vertex distances. Knowledge of any ten of those quantities must, in the generic case, reduce the possible values of any others to at most a (small) finite number of values, but these relations involve polynomials of much higher degrees and divergences are expected, presumably even in cases for which the hyper-volume of the 4-simplex is non-zero.Footnote 17

Despite the many similarities between the tetrahedron and higher dimensional n-simplices, one property that does not seem to generalize is the factorization of \(\Omega _3\) as a polynomial in the square roots of the natural parameters noted in Eq. (81); this is likely related to the fact that in \(n = 3\) dimensions there are only three \((n-1,2)\)-medial sections (parallelograms) and not \(n (n+1) / 2\) (i.e. six for \(n = 3\)) of them as in higher dimensions. As a result, the structure of the locus of the equation \(\Omega _n = 0\), which was analyzed in depth for \(n = 3\) in Ref. [14, Part III] making essential use of this factorization, appears to be much more complicated in higher dimensions. Indeed it is likely that the sophisticated machinery of algebraic geometry in projective spaces will be needed for such a study, although that machinery generally presumes that one is working over the field of complex numbers — without any of the geometric interpretations geometric algebra can provide; see e.g. Refs. [23, 24, 28]. It seems likely, however, that geometric algebra could significantly enhance that branch of mathematics as well.