Conformal Geometric algebra #
This files defines the conformalized vector space conformalize V
, and its associated geometric algebra CGA
.
A typical usage would use CGA (euclidean_space ℝ 3)
.
The conformalized space conformalize V
#
A conformalized vector has additional $n_0$ and $n_\infty$ components
Instances for conformalize
Linear maps which extract the three components, with c_
abbreviating
"coefficient of".
Equations
- conformalize.v = linear_map.fst ℝ V (ℝ × ℝ)
Equations
- conformalize.c_n0 = (linear_map.fst ℝ ℝ ℝ).comp (linear_map.snd ℝ V (ℝ × ℝ))
Equations
- conformalize.c_ni = (linear_map.snd ℝ ℝ ℝ).comp (linear_map.snd ℝ V (ℝ × ℝ))
The embedding of directions from V
into conformalize V
, and the two
basis vectors.
Equations
- conformalize.of_v = linear_map.inl ℝ V (ℝ × ℝ)
Equations
- conformalize.n0 = (0, 1, 0)
Equations
- conformalize.ni = (0, 0, 1)
Lemmas to train the simplifier about trivial compositions of the above.
The embedding of points from V
to conformalize V
.
Equations
- conformalize.up x = conformalize.n0 + ⇑conformalize.of_v x + (1 / 2 * ‖x‖ ^ 2) • conformalize.ni
The metric on the conformalized space #
The metric is the metric of V plus an extra term about n0 and ni.
Show the definition is what we expect.
Train the simplifier how to act on components
The c_n0 and c_ni terms cancel to give the (negated) distance
The geometric algebra over that space #
Define the Conformal Geometric Algebra over V
.