Function:
Cli5plus[`convert/dwedge_to_wedge`], Cli5plus[`convert/dwedge_to_wedge`] - converting between wedge and dotted wedge
Calling Sequence:
c1 := convert(p1,wedge_to_dwedge,F)
c2 := convert(p2,dwedge_to_wedge,FT)
Parameters:
p1 - Clifford polynomial expressed in terms of un-dotted standard Grassmann wedge basis (element of one of these types: `type/clibasmon` , `type/climon` , `type/clipolynom` )
p2 - Clifford polynomial in dotted basis (although still expressed in terms of the standard Grassmann wedge monomials)
F, FT - argument of type name, symbol, matrix, array, or `&*`(numeric,{name,symbol,matrix,array}). When F and FT are matrices or arrays, they are expected to be antisymmetric and negative of each other, that is, FT = linalg[transpose](F).
F is assumed to be, by default, the antisymmetric part of B.
Output:
c1 : a Clifford polynomial expressed in terms of the un-dotted Grassmann basis
c2 : a Clifford polynomial in "dotted" basis expressed in terms of the standard Grassmann basis
Description:
These two functions are used by the dotted-wedge in Cl(B) given by dwedge . The latter accompanies the Graßmann wedge product, but differs in its graduation. In fact both products are isomorphic as exterior products, but relay on different filtrations. The dotted wedge product and the undotted one are related by the process of cliffordization which is used in CLIFFORD internally to compute the Clifford product in Cl(V,B). However, the cliffordization is performed in this case by an antisymmetric bilinear form B=F, say F(x,y)=-F(y,x), where x and y are 1-vectors in V.
NOTE: Til now both types of algebras are expanded (formally) over the same basis Grassmann monomials which, according to CLIFFORD's convention, are written as eiwej... . It is the responsibility of the user to keep track which type of wedge he/she is using and which expression is based on which exterior product, dotted or undotted. It is a good idea it to assign such expressions to a descriptive lhs, see below.
References:
[1] Ablamowicz, R.: “Helmstetter formula and rigid motions with CLIFFORD”, in "Advances in Geometric Algebra with Applications in Science and Engineering -- Automatic Theorem proving, Computer Vision, Quantum and Neural Computing, and Robotics", Eds. Eduardo Bayro-Corrochano and Garret Sobczyk, Birkhäuser, 2001.
[2] Ablamowicz, R. and Bertfried Fauser: “On the decomposition of Clifford algebras of arbitrary bilinear form”, Rafal Ablamowicz and Bertfried Fauser, in “Clifford Algebras and their Applications in Mathematical Physics”, Eds. Rafal Ablamowicz and Bertfried Fauser, Vol. 1: Algebra and Physics, Birkhäuser, Boston, 2000, pages 341--366 (see also http://www.birkhauser.com/cgi-win/isbn/0-8176-4182-3).
[3] “Clifford Algebras and their Applications in Mathematical Physics”, Eds. Rafal Ablamowicz and Bertfried Fauser, Vol. 1: Algebra and Physics, Birkhäuser, Boston, 2000, (ISBN 0-8176-4182-3) (for more information go to http://math.tntech.edu/rafal/mexico/mexico.html).
[4] Ablamowicz, R. and P. Lounesto: “On Clifford algebras of a bilinear form with an antisymmetric part,” with P. Lounesto, in “Clifford Algebras with Numeric and Symbolic computations”, Eds. R. Ablamowicz, P. Lounesto, and J. Parra, Birkhäuser, Boston, 1996, pages 167-188.
[5] “Clifford Algebras with Numeric and Symbolic Computations”, Eds. Rafal Ablamowicz, Pertti Lounesto, and J. Parra, Birkhäuser, Boston, 1996 (ISBN 0-8176-3907-1).
Examples:
> restart:with(Cliff5):with(Cli5plus);
Warning, new definition for init
Warning, definitions for type/climon and type/clipolynom now include &C and &C[K]. Type ?cliprod for help.
Example: (Dotted and undotted wedge bases) Let us first expand the basis of the original wedge into the dotted wedge and back. For this purpose we choose dim_V=3 and set up a antisymmetric bilinear form F and its negative FT:
> convert(e1we2,wedge_to_dwedge,K);
> convert(%,dwedge_to_wedge,-K);
>
dim_V:=3:
F:=array(1..dim_V,1..dim_V,antisymmetric):
F=evalm(F);
FT:=linalg[transpose](F);
>
w_bas:=cbasis(dim_V); ## the wedge basis
g:=array(1..dim_V,1..dim_V,symmetric):
B:=evalm(g+F);
Now we map the convert function onto this basis to get the dotted-wedge basis (and back to test that this device works properly)
> d_bas:=map(convert,w_bas,wedge_to_dwedge,F);
> test_wbas:=map(convert,d_bas,dwedge_to_wedge,-F);
Note that only the scalar Id
and the one vector basis elements
ei
are unaltered and that the other basis elements of higher grade pick up additional terms of lower grade (which preserves the filtration).
It is possible to define aliases for the dotted wedge basis "monomials" similar to the Grassmann basis monomials used by 'CLIFFORD'. For example, we could denote the element e1we2 + F[1,2]*Id by e1de2 or e1We2, and smilarly for other elements:
>
alias(e1We2=e1we2 + F[1,2]*Id,
e1We3=e1we3 + F[1,3]*Id,
e2We3=e2we3 + F[2,3]*Id,
e1We2We3=e1we2we3+F[2,3]*e1-F[1,3]*e2+F[1,2]*e3);
and then Maple will display automatically dotted basis in d_bas in terms of the aliases:
> d_bas;
While command 'cbasis' displays basis elements in the Grassmann basis by default, it is not difficult to write a new procedure that would display the dotted basis instead. This procedure is called 'dottedcbasis' . Since we have defined aliases above, output from 'dottedcbasis' will be automatically converted to aliases:
> dottedcbasis[F](3);
> dottedcbasis[F](3,'even');
> dottedcbasis[F](3,2);
With the procedure 'findbasis' which returns linearly independent elements from a list, we can verify that the above lists contain linearly independent elements:
> findbasis(dottedcbasis[F](3));
> findbasis(dottedcbasis[F](3,'even'));
> findbasis(dottedcbasis[F](3,2));
Example 2: (Commutative Diagram: Reversion in dotted and undotted bases) We proceed to show that the expansion of the Clifford basis elements into the dotted or undotted exterior products has also implications for other well known operations such as e.g. the Clifford reversion. Only if the bilinear form is symmetric, we find that the reversion is grade preserving, otherwise it reflects only the filtration (i.e. is in general a sum of terms of the same and lower degrees).
>
reversion(e1we2); #reversion w.r.t. B (implicit)
reversion(e1we2,B); #reversion w.r.t. B (explicit - only antisymmetric part F matters)
reversion(e1we2,F); #reversion w.r.t. B (explicit - only antisymmetric part F matters)
reversion(e1we2,g); #reversion w.r.t. g (classical result)
Observe in the above that only when B[1,2]=B[2,1], the result is -e1we2 known from the theory of classical Clifford algebras. Likewise,
> cbas:=cbasis(3);
>
map(reversion,cbas,B); #explicit use of B = g + F
map(reversion,cbas,F); #one use the antisymmetric part of B only
If instead of B we use the symmetric part g of B, we obtain instead
> map(reversion,cbas,g);
Convert now e1we2 to the dotted basis and call it e1We2:
> convert(e1we2,wedge_to_dwedge,F);
Apply reversion to e1We2 with respect to F to get the reversed element in the dotted basis:
> reversed_e1We2:=reversion(e1We2,F);
Observe, that the above element equals the negative of e1We2 just like reversing e1we2 with respect to the symmetric part of B (called 'g' above):
> reversed_e1We2+e1We2;
Finally, convert reversed_e1We2 to the un-dotted standard Grassmann basis to get -e1we2:
> convert(reversed_e1We2,dwedge_to_wedge,-F);
The above, of course, can be obtained by applying reversion to e1we2 with respect to the symmetric part of B:
> reversion(e1we2,g); #reversion with respect to the symmetric part g of B
This shows that the dotted wedge basis is the particular basis which is stable under the Clifford reversion computed with respect to F, the antisymmetric part of B. This requirement allows one to distinguish Clifford algebras Cl(g) which have a symmetric bilinear form g from those which do not have such symmetric bilinear form but a more general form B instead. We call the former
classical Clifford algebras
while we use the term
quantum Clifford algebras
for the general non-necessarily-symmetric case.
>
See Also: Bigebra [help] , Cli5plus[dwedge] , Cliff5[reversion] , Cliff5[cbasis]
(c) Copyright October 8, 1995, by Rafal Ablamowicz & Bertfried Fauser, all rights reserved.
Last modified: January 4, 2002, RA/BF.