Implementation of basic math data types with high level frontend and low level backend
✔️ -> Implemented\ 🟧 -> Implemented, not released yet\ ⚠️ -> Implementation expected\ ❌ -> Not implemented
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ---------------- | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ⚠️ | ⚠️ | ✔️ | | Subtraction | ✔️ | ⚠️ | ⚠️ | ✔️ | | Multiplication | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Division | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Conjugate | ✔️ | ✔️ | ⚠️ | ✔️ | | Polar Coordinates | ✔️ | ✔️ | ⚠️ | ✔️ | | Square Root | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Exponential | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Natural Logarithm | ✔️ | ✔️ | ⚠️ | ✔️ | | Sine | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Cosine | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Tangent | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Hyperbolic Sine | ⚠️ | ⚠️ | ⚠️ | ⚠️ | | Hyperbolic Cosine | ⚠️ | ⚠️ | ⚠️ | ⚠️ | | Hyperbolic Tangent | ⚠️ | ⚠️ | ⚠️ | ⚠️ |
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ---------------- | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ✔️ | ⚠️ | ✔️ | | Subtraction | ✔️ | ✔️ | ⚠️ | ✔️ | | Multiplication | ✔️ | ✔️ | ⚠️ | ✔️ | | Division | ✔️ | ✔️ | ⚠️ | ✔️ | | Dot product | ✔️ | ✔️ | ⚠️ | ✔️ | | Sum | ✔️ | ✔️ | ⚠️ | ✔️ | | Norm | ✔️ | ✔️ | ⚠️ | ✔️ | | Norm2 | ✔️ | ✔️ | ⚠️ | ✔️ | | Unit | ✔️ | ✔️ | ⚠️ | ✔️ |
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ------------------ | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ⚠️ | ⚠️ | ✔️ | | Subtraction | ✔️ | ⚠️ | ⚠️ | ✔️ | | Multiplication | ✔️ | ⚠️ | ⚠️ | ✔️ | | Division | ✔️ | ⚠️ | ⚠️ | ✔️ | | Dot product | ✔️ | ⚠️ | ⚠️ | ✔️ | | Cross product | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Sum | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Norm | ✔️ | ⚠️ | ⚠️ | ✔️ | | Norm2 | ✔️ | ⚠️ | ⚠️ | ✔️ | | Unit | ✔️ | ⚠️ | ⚠️ | ✔️ |
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ---------------- | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ⚠️ | ⚠️ | ✔️ | | Subtraction | ✔️ | ⚠️ | ⚠️ | ✔️ | | Multiplication | ✔️ | ⚠️ | ⚠️ | ✔️ | | Division | ✔️ | ⚠️ | ⚠️ | ✔️ | | Dot product | ✔️ | ⚠️ | ⚠️ | ✔️ | | Sum | ✔️ | ⚠️ | ⚠️ | ✔️ | | Norm | ✔️ | ⚠️ | ⚠️ | ✔️ | | Norm2 | ✔️ | ⚠️ | ⚠️ | ✔️ | | Unit | ✔️ | ⚠️ | ⚠️ | ✔️ |
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ---------------- | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Subtraction | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Multiplication | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Division | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Transposed | ✔️ | ✔️ | ⚠️ | ✔️ | | Inverse | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Trace | ✔️ | ✔️ | ⚠️ | ✔️ | | Determinant | ✔️ | ⚠️ | ⚠️ | ⚠️ |
| | SSE (x86/64) | Neon (aarch64) | Wasm | Naive | | ---------------- | ------------ | -------------- | ---- | ----- | | Addition | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Subtraction | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Multiplication | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Division | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Transposed | ✔️ | ✔️ | ⚠️ | ✔️ | | Inverse | ✔️ | ⚠️ | ⚠️ | ⚠️ | | Trace | ✔️ | ✔️ | ⚠️ | ✔️ | | Determinant | ✔️ | ⚠️ | ⚠️ | ⚠️ |
4x4 matrices are yet to be implemented, but are expected to be in the future
Double precision arithmetic is to be implemented on all architectures, except on Naive