You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Finally I understand how to define PGA invariantly
When using framerowks stemming from linear algebra to do calculation, we have to use coordinates (and so, bases).
But this is often extraneous for mathematical analysis of what and why we are doing.
So when we construct an object that’s independent of any basis chosen,
it’s usually desirable to do so without introducing any choice of basis beforehand.
For a long time, an invariant construction of projective geometric algebra,
a Clifford algebra approach to calculate with points, lines, segments and so on, and translations of the point space
as opposed to just rotations and reflections which an unflavored geometric algebra does, eluded me.
Further down I assume you know what it looks like and what covectors are.
Intuition and preliminaries
Nullspaces of k-covectors
Let $V$ be a vector space. Note that we can encode a hyperplane $F\subset V$ as a nullspace of a covector $f\in V^*$
such that $v\in F \Leftrightarrow fv = 0$. We write $F = \ker f$.
This encoding is also projective in the sense that, for all scalars $c\ne0$, covectors $c f$ encode the same subspace $F$.
Forming exterior products of covectors we get bi-covectors and so on.
A bi-covector can both be thought as a co-bivector (takes a bivector linearly and returns a scalar)
and as an antisymmetric bilinear function taking two vectors and returning a scalar.
So it’s also a linear function taking a vector and returning a covector
(can be expressed via insertion).
In this way we can define a nullspace of a co-bivector in the space of vectors$V$ (versus its natural space of bivectors).
Namely, for a bi-covector $\beta\in\wedge^2 V^*$ let $v\in\ker\beta \Leftrightarrow \iota_v \beta = 0$,
that is, vectors in the nullspace make $\beta$ return a zero $covector$ (and not just a scalar zero as above).
Generalizing, the nullspace of an arbitrary $k$-covector consists of vectors that make it return a zero $(k-1)$-covector.
This allows us to encode any subspace of $V$ as a (decomposable) $k$-covector, and again projectively at that.
So we can make a projective space construction using a space of $(\dim V - 1)$-covectors instead of $V$ itself.
There’s a neat difference in this because we get $(\dim V - 1)$-covectors starting just from regular 1-covectors.
You can already see the reversal that is so essential to have in PGA because otherwise the math doesn’t work.
Orthogonal sum
Having two linear spaces $U_1$ and $U_2$ equipped with quadratic forms $Q_1$ and $Q_2$ respectively,
we can make the direct sum $U := U_1 \oplus U_2$ into a quadratic space as well by defining a quadratic form on it
so we treat natural embeddings of $U_1$ and $U_2$ in $U$ as orthogonal: $Q((u_1, u_2)) := Q_1(u_1) + Q_2(u_2)$.
The $Q$ here is indeed a quadratic form.
This construction is helpful when relating Clifford algebras on similar space, for example for the
classification of Clifford algebras itself.
Here it’s also useful. Recall that in PGA, all basis vectors except one have nonzero (or positive in Euclidean case) squares
and only just one is nilpotent. It ends up the case that the latter doesn’t actually “belong” with the former initially.
$U$ equipped with $Q$ is denoted $U_1 \perp U_2$.
It’s a useful notation because we can define a Clifford algebra over a quadratic space as a single entity.
Construction
Now, let $(V, Q)$ be a space of “geometric” vectors we care about and want to think about as points,
with a non-degenerate quadratic form of choice on them.
Take $V^*$ and let $Q^*$ be an induced quadratic form on $V^*$.
Now that $V^*$ is also a quadratic space, we can take its orthogonal sum with a special space $E$
which is one-dimensional and has a quadratic form on it that’s just zero.
PGA is $Cℓ(V^* \perp E)$, then. Well, for more use we still need to specify a basis vector $e_0\in E$ but that’s all.
No basis in $V$, neither in $V^*$, was needed.
Despite it’s not a Clifford algebra over a completely arbitrary quadratic space
(which will, understandably, operationally be just a plain flavorless GA),
it has as much invariance as one is entitled to wish for in this case
(we can’t possibly want to take away the choice of $e_0$).
Well, actually $V$ couldn’t be our space of points. Of course. It should be an affine space over$(V, Q)$.
And $e_0$ allows us to recover the usual picture of embedding an affine space into a projective space as
some non-zero level set $A$ of $e_0$.
Intersections of $A$ with nullspaces of $k$-covectors induced here in $\wedge(V^* \perp E)$ from $\wedge V^*$
give our usual affine points, lines, planes and so on.
And purely projective points, lines etc. as well, of course,
by using covectors that aren’t induced from $\wedge V^*$, that “use $e_0$ in their recipe”.
Reflection
I now think I even saw somewhere that PGA is made over a covector space but I don’t think I had any thoughts on that then.
And, as we see, the picture ends up a bit more complicated!
Also a peculiar side effect is that whereas a construction of projective geometry primitives from $k$-vectors endows them
with internal orientation, this $k$-covector approach makes their natural orientation external:
the nullspace hyperplane of a covector has a positive and a negative half-spaces
corresponding to where the covector takes negative and positive values.
Similarly, a bi-covector has its nullspace oriented like an “axis” (fixed subspace) of some simple rotation, and so on.
For further example, at the other end, a line which is a nullspace of a $(\dim V - 1)$-covector,
gets oriented “around” instead of like a vector does, and a 2-plane gets oriented not like a bivector
(reminiscing of rotation directions in that plane) but inside out.
(See William L. Burke’s books on $k$-vectors and $k$-forms for visual aid.
A great loss he died so unexpectedly and early, in 90s, with just a draft of “Div, grad, curl are dead”.)
The covector approach also explains why adding $e_0$ translates hyperplanes and in which direction are they going:
adding a dimension, we see covectors that embody them in full glory,
and visualizing covector addition shows us that adding a positive multiple of $e_0$
moves a hyperplane in its negative direction,
at least if we look at a positive level of $e_0$ as representing the affine space.
By construction, the zero level (well, the nullspace) of $e_0$ is the natural embedding of $V$
so it has the original form $Q$ on it, allowing to visualize the $Q^*$ we used and so
understanding norms of elements like $e_1$, $e_1 + e_0$, $-3e_1 + 2e_0$ better:
$e_0$ both leaves nothing by being restricted to $V$ and is defined to have norm zero so it adds nothing,
$e_1$ has some “footprint” on $V$ between its levels 0 and 1, measured orthogonally between them
(because we have $Q$ to allow that), and $-3e_1$ has thrice the same footprint so its norm is thrice more.
But also, $-3e_1$ has its positive and negative directions swapped, so it translates differently when adding multiples of $e_0$.
Which also makes sense in projective light because $-3e_1 + 2e_0$ encodes the same thing as $3e_1 - 2e_0$, of course.
But the more viewpoints the more connected a picture becomes, allowing more intuitions.
Also a nitpick with a counter
I made PGA to be the Clifford algebra over $V^* \perp E$ which might seem not “typed correctly”
but I just wanted to shave off an entity we aren’t necessarily using here. We can use $V^* \perp E^*$
again for some 1D linear space $E$ but we can’t start with a quadratic form on $E$ and induce one on $E^*$
exactly because it’s degenerate—so we’ll need to define one for $E^*$ while either not having one on $E$ or
having a technically unrelated one there (albeit both forms will be zero)—that’s an unnecessary hair
to split accidentally in presentation. Moreover, even if we start from $V^* \oplus E$, we have its dual as
(naturally isomorphic to) $V \oplus E^*$, as $E$ is finite-dimensional.
So we don’t lose anything by just using $E$ as “formal null covector line” here.