NonCommutativeMultiply
The ordered product, for units that anticommute. cannot host one: Multiply is declared commutative, so canonicalisation sorts its operands before any handler runs and the sign is lost.
✓ checked against that system · ! checked, with disagreements (hover a chip)Wolfram Language
NonCommutativeMultiply!NonCommutativeMultiply(a, b, …)the product of the operands, in the order writtenGeometricProduct(a, b, …)alias, for the geometric-algebra readinga \otimes binfix alias ()Typed signatures
| Type | Package | Applies |
|---|---|---|
untyped | hypercomplex | always |
(number*) -> number | structures | always |
Details
- Wolfram spells this head the same way (infix
**), keeping it apart fromTimes; matrix multiplication is likewise its own head,Dot - On the COMMUTING families it simply agrees with , so it is safe to use everywhere
- A tensor product of two scalars is their product, so is
- Associative across mixed families: the commutation factor is a bicharacter
- Juxtaposition carries the sign on its own -- is caught before
Multiply's commutative sort can reach it - An explicit or is not: it parses straight to a sorted
Multiply, so it REFUSES two distinct anticommuting units rather than assert a sign it cannot justify
Examples
Possible issues #
About
| Examples | 14 |
|---|---|
| Checked against | Wolfram Language 8 agree2 differ4 unevaluatedSageMath 6 agreeSymPy 1 agree |
| Crosswalk | Wolfram Language |
Implementation
mapped
sagepackages/oracle/src/mappings.ts See also: Norm, Basis, Quaternions