See: https://www.researchgate.net/publication/220915895_Rule-Based_Simplification_in_Vector-Product_Spaces
There has been some work done on this subject in one of the Axiom forks: ---------- Forwarded message ---------- From: someone <[email protected]> Date: 27 October 2012 21:07 Subject: Re: [fricas-devel] Abstract Vector Algebra To: [email protected] > I started making a small package for component-free vector algebra. It > is based on the work "Rule-Based Simplification in Vector-Product > Spaces" written by Songxin Liang and David J. Jeffrey. I made some real progress with the code. In the most up to date version it can do many non-trivial problems. For example: (122) -> simplify( (va-vd)^(vb-vc) + (vb-vd)^(vc-va) + (vc-vd)^(va-vb) - 2*(va^vb + vb^vc + vc^va) ) (122) 00 Type: VectorAlgebra(Integer) I attached the code as well as the examples and some other tests. You can find the most recent versions of all files in the github repo at: https://github.com/raoulb/fricas_code/blob/vectoralg/vecalg/ -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/fricas-devel?hl=en. ---------- Forwarded message ---------- From: Raoul <[email protected]> Date: 29 March 2013 19:42 Subject: Re: [Axiom-mail] A question about Axiom capabilities To: u1204 <[email protected]>, [email protected] Dear Tim, > If you look at the matrixcookbook that Mike mentioned, the first 10 > equations are: > > (A*B)^-1 = B^-1 * A^-1 > (A*B*C...)^-1 = ...C^-1 * B^-1 * A^-1 > (A^T)^-1 = (A^-1)^T > (A+B)^T = A^T + B^T > (A*B)^T = B^T * A^T > (A*B*C...)^T = C^T * B^T *A^T > (A^H)^-1 = (A^-1)^H > (A+B)^H = A^H + B^H > (A*B)^H = B^H * A^H > (A*B*C...)^H = ...C^H * B^H * A^H Yes, I know this book very well. It would be indeed nice if Axiom could do such things in an abstract fashion. > It seems like we could create a SymbolicMatrix algebra that could > perform these manipulations with uninterpreted matrix symbols > A, B, C with a special recognized symbol 'T'. I think it would be possible, however I expect representation of abstract matrix algebra to be much more complicated than the vector algebra stuff. There are transposes, conjugates, inverses, traces, determinants and much more. One would need to have a way to encode all these operation "unevaluated". > These matrices could have actual values which, for certain operations > are ignored, so that > > (A*B)^-1 = B^-1 * A^-1 > > but for other operations would be evaluated as in: > > eval(B^-1 * A^-1) > > giving the actual matrix result shown element by element. Yes, of course this should play together with usual (dense or sparse) matrices nicely. Doesn't make the task easier though. And do we want define abstract matrices with or without shape information? > An additional enhancement would be to make a SymbolicMatrixCategory > so that there could be specific domains such as > > GeneralSymbolicMatrix, > SymmetricSymbolicMatrix, > UpperTriangularSymbolicMatrix, > DiagonalSymbolicMatrix, > > etc which could exploit certain matrix-level properties at the > symbolic level. Maybe someone should indeed try. I don't think I find the time to try this soon. It occurred to me that component-free geometric algebra might be easier to start with anyway. There is a nice book on the topic: https://sites.google.com/site/grassmannalgebra/ https://sites.google.com/site/grassmannalgebra/thegrassmannalgebrabook which is accompanied by a Mathematica Package (that I never tried so far): https://sites.google.com/site/grassmannalgebra/thegrassmannalgebrapackage The algebra in there is as far as I remember not done in an abstract way, but with explicit bases. -- Raoul _______________________________________________ Axiom-mail mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/axiom-mail
examples.input
Description: Binary data
tests.input
Description: Binary data
VA.spad
Description: Binary data
_______________________________________________ Axiom-mail mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/axiom-mail
