Re: Abstract Symbolic Matrix operations in Mathematica

• To: mathgroup at smc.vnet.net
• Subject: [mg96764] Re: Abstract Symbolic Matrix operations in Mathematica
• From: dh <dh at metrohm.com>
• Date: Tue, 24 Feb 2009 05:46:01 -0500 (EST)
• References: <gnq6qn\$86g\$1@smc.vnet.net>

Hi,

as far as I know, mma considers a matrix as a bunch of elements. Those

may be symbolic, but not the matrix itself. This leaves two avenues to

proceed. You may either setup a matrix with explicit dimensions and

symbolic elements (using e.g. Array). Or you may define a new data type,

where you have to specify the rules yourself. E.g, assuming we call a

symbolic matrix with name x: SymMat[x]. The rules:

Unprotect[Transpose];

Transpose[a_SymMat. b_SymMat] := Transpose[b].Transpose[a]

Transpose[a_SymMat + b_SymMat] := Transpose[a] + Transpose[b]

etc.

Here I changed the definition of Transpose for simplicity. However, if

you are not sure what you are doing, it would be better to define a new

operator (e.g. myTranspose).

Then,f you the say:

Transpose[SymMat[x].SymMat[y]]

you will get:

Transpose[SymMat[y]].Transpose[SymMat[x]]

hope this helps, Daniel

dvshin wrote:

> Can anybody tell me how to do operations on matrix equations without computing on the element level in Mathematica? In other words, for example, if I have two "abstract" matrices A and B, what should I type to verify the following:

>

> (AT)^T = B^T A^T

>

> Would appreciate any thoughts.

>

• Prev by Date: Re: Abstract Symbolic Matrix operations in Mathematica
• Next by Date: Re: FullGraphics of Graphics3D
• Previous by thread: Re: Abstract Symbolic Matrix operations in Mathematica
• Next by thread: Mathematica problem