The VGA (Vector Geometric Algebra) system is a Clifford algebra which unifies complex numbers, quaternions, and vectors into a cohesive algebra that generalizes their functions which allows easier understanding of how they fit together and how the solutions of one can apply to the others.
> In mathematics, a Clifford algebra is an algebra generated by a vector space with a quadratic form, and is a unital associative algebra. As K-algebras, they generalize the real numbers, complex numbers, quaternions and several other hypercomplex number systems.
\- [Clifford Algebra](https://en.wikipedia.org/wiki/Clifford_algebra) via Wikipedia
See also: [[Vector Matrix Multiplication]], [[Math Notation Mathtex and LaTeX]]
# Representation of Vectors
## Variables
In situations where clarity is needed, I use an arrow over the variable to indicate that it is a vector.[^1]
$\vec v$
## Contents
The components of typical multivectors are represented with square brackets around them and separated by commas.
$\begin{bmatrix}x, y, z\end{bmatrix}$
## Basis
The components of basis vectors are represented with curly braces around them and separated by commas.
Their contents represent the basis - the unit or axis - of a vector space. This can be thought of as a schema which defines the data type of the positional values within vectors of that container type. Vectors with that basis map to each component in order: eg the first component of a vector maps to the first component of the basis.
$\begin{Bmatrix}x, y, z\end{Bmatrix}$
## Components
The individual component values within a vector can be referenced directly and these are represented with subscripts. These subscripts can be positional starting at `1`, using the standard letters of a Cartesian axis, or the [[Quaternion]] letters.
## Magnitude
Double vertical bars on each side of a vector or component indicate the magnitude (which is a [norm](<https://en.wikipedia.org/wiki/Norm_(mathematics)>) related to the absolute value for scalars) of that vector or component.[^2]
$\begin{gathered}
\lvert \lvert \vec a \rvert \rvert
\\
\lvert \lvert x \rvert \rvert
\end{gathered}$
The magnitude formula for a vector with a cardinality of `2` squares and adds its two components before taking their square root.
$
\lvert \lvert \vec a \rvert \rvert = \sqrt {a_x^2 + a_y^2}
$
# Vector Space
## Basis Vectors in Euclidean Space
Basis vector are the axes of the space. They are orthogonal. They are normal and have a unit length (magnitude) of `1`. For this reason they are said to be "orthonormal".$
\begin{Bmatrix}
x , y , z
\end{Bmatrix}
$Each element in a basis has a length equal to `1` (the "unit length") but as they are mutually orthogonal, they are not themselves equal to each other and do not cancel each other out in algebraic forms even if their magnitude is the same. $\begin{gathered}
\lvert \lvert x \rvert \rvert = \lvert \lvert y \rvert \rvert
\\
x \neq y
\end{gathered}$
## Orthonormal Vectors
Orthonormal vectors are vectors whose components are unit length *and* mutually orthogonal. Vectors which satisfy those constraints have additional special properties.
Of particular interest, while multivectors in general are non-commutative, orthonormal vectors have the ability to reverse the terms of a multiplication so long as the result is negated. This is called the [[Vector Properties#Anti-Commutative Vector Cross Product|anti-commutative property]].
$
xy = -yx
$
## Normal Vectors
See also: [[Vector Properties#Normalizing a Vector]]
A vector whose components are unit length.
## Generalized Vectors
Vectors without consideration for the constraints of euclidean coordinates often use $\begin{Bmatrix} i, j, k \end{Bmatrix}$ instead of $\begin{Bmatrix} x, y, z \end{Bmatrix}$. This is identical the notation used for [[Quaternions]]. Which is no coincidence because they are equivalent concepts.
# Vector
A set of 1-dimensional (point/line) values relative to some unit basis.
$\begin{Bmatrix} x, y, z \end{Bmatrix}$
Vectors are visualized as a point in euclidean coordinate space or a line from origin $(0,0,0)$ to that point encoded by the vector. The length of the line segment from origin $O$ to the point $P$ is equal to the magnitude of the vector.
$\begin{gathered}
O = (0,0,0)
\\
P = (\vec v_x, \vec v_y, \vec v_z)
\\
\rvert\overline{OP}\rvert = \lvert \lvert \vec v \rvert \rvert
\end{gathered}$
## Vector Equality
- ! I believe this is referring to the [[Vector Matrix Multiplication#Dot Product]] strategy of multiplication. But I'm not sure where I got this axiom from.
A vector squared is equal to the length of the vector squared. $\vec v^2 = \lvert \lvert \vec v \rvert \rvert^2$
This *only* applies to the special case of multivectors with a 1-dimensional basis but not any other class of multivector.
# Bivector
> **Bivectors** represent the minimum information required in any given dimension to store both a **plane** and a **magnitude**.
>
> This is why they show up when dealing with **rotations**, because rotations happen in a **plane**.
\- *[Why can't you multiply vectors?](https://www.youtube.com/watch?v=htYh-Tq7ZBI)* by Freya Holmér via YouTube
A [bivector](https://en.wikipedia.org/wiki/Bivector) is a set of 2-dimensional (plane) values relative to some unit basis.
$\begin{Bmatrix} yz, zx, xy \end{Bmatrix}$
Bivectors are visualized as a plane with a defined area and orientation in space but without positional information.
>[!NOTE]
> While a bivector contains enough information to construct an oriented plane of a specific area, those different pieces of information are not written discretely, and most people cannot intuit the area or orientation just from looking at it.
Positional information would be better stored in a separate [[#Vector]]. The *area* of the plane is equal to the magnitude of the bivector.
A bivector is a generalization of the special-purpose [pseudovector](https://en.wikipedia.org/wiki/Pseudovector). Pseudovectors belong to a family of related pseudo prefix constructs like [pseudoscalars](https://en.wikipedia.org/wiki/Pseudoscalar).
# Trivector
A trivector is a set of 3-dimensional (volume) values relative to some unit basis.
$\begin{Bmatrix} xyz \end{Bmatrix}$
Trivectors are visualized as an arbitrary $n$-dimensional shape having a defined volume and orientation in space, but without positional information.
As with a bivector, positional information would be better stored in a [[#Vector]]. The *volume* of the shape is equal to the magnitude of the trivector.
Also called a `3-vector`.
# Rotor
A [rotor](<https://en.wikipedia.org/wiki/Rotor_(mathematics)>) is a scalar with a set of values relative to some single unit basis (vector, bivector, or trivector).
$\begin{Bmatrix} 1, yz, zx, xy \end{Bmatrix}$
A generalization of complex numbers and quaternions. Rotors are the result of an algebraic multiplication of two vectors.
Rotors satisfy the constraint that when multiplied with itself with the elements in the reversed order they must equal 1.
$R\overset\sim R = 1$
[Quaternions](https://en.wikipedia.org/wiki/Quaternion) are a special case of rotor. Quaternions can be reversed (rotated 180 degrees) simply by changing the order of their components, so there is no computational overhead to this operation.
[Spin group](https://en.wikipedia.org/wiki/Spin_group) elements are a special case of rotor.
# Multivector
A [multivector](https://en.wikipedia.org/w/index.php?title=Multivector) is a set of values relative to mixed units, including point, plane, volume, $n$-dimensional, and unitless scalar.
All other vector and rotor types can be viewed as special classes of multivectors. Multivectors themselves can be viewed as a special class of [[Tensor]] or [[Matrix]].
Vector multiplication is non-commutative.
$\vec a \vec b \neq \vec b \vec a$
A [[blade]] is a separate generalization which covers a certain subset of multivectors and scalars from vectors with simple bivectors and other n-vectors.
## 2D
A full 2D Vector Geometric Algebra (VGA) Multivector:
$\begin{Bmatrix} 1, x, y, xy \end{Bmatrix}$
Where $1$ is the scalar component, $x,y$ are the vector components, and the $xy$ is the [[#Bivectors|bivector]] component.
## 3D
A full 3D Vector Geometric Algebra (VGA) Multivector:
$\begin{Bmatrix} 1, x, y, z, yz, zx, xy, xyz \end{Bmatrix}$
Where $1$ is the scalar component, $x,y,z$ are the vector components, $yz$, $zx$, and $xy$ are the [[#Bivectors|bivector]] components, and $xyz$ is the trivector.
A trivector axis is the unit volume with the volume equal to `1`.
# Properties
## Cardinality
A vector's cardinality refers to the number of algebraic dimensions in that vector's space. This is equivalent to the number of components or elements in a set.
$\begin{gathered}
a = \begin{bmatrix}4,5,6\end{bmatrix} \\
\# a = 3
\end{gathered}$
# References
- https://en.wikipedia.org/w/index.php?title=Multivector
- https://en.wikipedia.org/wiki/Clifford_algebra
- https://en.wikipedia.org/wiki/Euclidean_vector
- https://en.wikipedia.org/wiki/Bivector
- https://en.wikipedia.org/wiki/Rotor_(mathematics)
- https://en.wikipedia.org/wiki/Cardinality
- https://en.wikipedia.org/wiki/Cartesian_coordinate_system?useskin=vector#Representing_a_vector_in_the_standard_basis
- https://en.wikipedia.org/wiki/Coordinate_vector
- https://openstax.org/books/university-physics-volume-1/pages/2-2-coordinate-systems-and-components-of-a-vector
- https://en.wikipedia.org/wiki/Row_and_column_vectors
- https://en.wikipedia.org/w/index.php?title=Vector_projection
- https://en.wikipedia.org/wiki/Scalar_projection
```cardlink
url: https://www.youtube.com/watch?v=ze5i_e_ryTk
title: "Goptjaam (欱攙): the unglossable* language (Cursed Conlang Circus 2)"
description: "Kjaangs piës dwen pip lauw kat.This video is a submission to (and 1st place winner of) @AgmaSchwa 's Cursed Conlang Circus 2 contest: https://www.youtube.com..."
host: www.youtube.com
favicon: https://www.youtube.com/s/desktop/28b0985e/img/favicon_32x32.png
image: https://i.ytimg.com/vi/ze5i_e_ryTk/maxresdefault.jpg
```
- https://gitlab.com/katmistberg/003-goptjaam/-/blob/main/derivation_A.md?ref_type=heads
# Footnotes
[^1]: In many publications, this feature is elided entirely.
[^2]: In many publications, only a single bar on each side is used, making it appear identical to the notation for absolute value.