Vector Expression Emitter (VEE): Geometric Algebra Code Generator
The goal of this crate is to generate optimized code for geometric algebra flavors.
- Uniquely reduce symbolic multivector expressions.
- Generate expressions in text form.
- Generate expressions in DOT form (i.e.,
text/vnd.graphviz). - Eliminate orthonormalization conditions from expressions using reflection/projection operator by factoring pinned symbols, GCD coefficients, and predominant signs.
- Evaluate symbols as rationals.
- Count operations (i.e., multiplications and additions).
- Define the metric-agnostic basis (i.e., elliptic, parabolic, hyperbolic) and the multivector entities of the projective geometric algebra (PGA) for dimensions D = N + 1 < 8.
- Further optimize expressions to reduce operation count by domain-specific common subexpression elimination (CSE) targeting exterior products.
- Generate expressions in LaTeX and code form.
- Define other geometric algebra flavors.
See the release history to keep track of the development.
Build the documentation with cargo-tex. Note that navigating the documentation requires web access as KaTeX is embedded via remote CDN.
cargo tex --openCopyright © 2025 Rouven Spreckels [email protected]
Licensed under the terms of the MPL-2.0.
Unless you explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Covered Software by You shall be licensed as above, without any additional terms or conditions.