Hi I thought it would be fun to develop R functionality for the octonions (there is already some work on quaternions).
The octonions are an 8 dimensional algebra over the reals, so an octonion may nicely be represented as a real vector of length 8. Applications are many and varied, mostly quantum mechanics. I would like to develop some R functionality in this area. My first problem is how to get (eg) a matrix whose entries are octonions? It would be nice for a %*% b to behave sensibly when a and b are matrices with octonion elements. Octonions are not associative [that is, x*(y*z) != (x*y)*z ] or commutative [x*y != y*x]. One usually sees an 8-by-8 table that gives the products. At this stage, I'm polling for ideas on overall structure. Would a package be the best way forward? Or writing an equivalent of complex.c? Or is there another approach that would be better? The basic multiplication table is easily implemented in C, and I now have an (untested) R function OctonionProduct(. , .) that multiplies two octonions; but I am struggling to see how to make this play nicely with R: it's not obvious how to make octonion matrices multiply as they should, in the same way that (eg) complex matrices do. Perhaps we could define "*" and "/" appropriately for vectors of class "octonion" (if such a thing makes sense): or is there a better way? Also, Mod(), Re(), and perhaps Conj() would have to be generalized to work with octonions. comments please! -- Robin Hankin Uncertainty Analyst National Oceanography Centre, Southampton European Way, Southampton SO14 3ZH, UK tel 023-8059-7743 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel