symbol non-commutative?

Kent-Andre Mardal kent-and at simula.no
Thu Aug 21 22:24:31 CEST 2003


Hi, 

I wonder if it is possible to make symbols non-commutable. The reason 
is that I want to invert systems of matrices, 

[[A B], 
 [C D]]

where A, B, C and D are matrices. The matrices are invertible, but I
do not want to say anything about their structure. 

I have made a subclass mystring of basic as described in sec. 6.3.  
and redefined return_type: 
unsigned return_type(void) const { return return_types::noncommutative; }

and it works fine: 
(a+b)*(a+b) = a*a+a*b+b*a+b*b

However, when I make a matrix of and try to solve it, the program abort.  
I have also tried to make a subclass of symbol, but this class does not seem to 
be as easy to subclass as basic.

Any hints ? 

Kent-Andre Mardal 








More information about the GiNaC-list mailing list