I think your implementations are completely different, though perhaps
they could be merged.  Mateusz's implementation is more about allowing
unevaluated functions on Matrices, whereas Matthews is more about
expressions where the variables are to be understood as matrices (I
use this instead of the ambiguous "symbolic matrices").

Both have their advantages.  For example, the laplace_expand() from
Mateusz's version doesn't make sense in Matthew's version.  On the
other hand, Matthew's version truly lets you manipulate undefined
matrices, and can be a more efficient way of manipulating defined ones
(e.g., Identity(100000) vs. eye(100000)).

But other than some functions like laplace_expand() only making sense
for one, I don't see any reason why these two approaches can't or
shouldn't be merged.  Actually, this is basically what was being
suggested when people said subs should work on symbolic matrices (a la
Matthew).

Aaron Meurer

On Fri, Jul 29, 2011 at 7:54 PM, Matthew Rocklin <mrock...@gmail.com> wrote:
> I like your use of the phrase "interpretation of Matrix Expressions." It
> makes it clear that we all probably have very different ideas for what
> Matrix Expressions should be. Hopefully there is a system which can handle a
> wide variety of needs.
> My current branch is here
> https://github.com/mrocklin/sympy/tree/matrix_expr
> The main difference between our two interpretations is that I think of
> MatrixExpr's as being built up mainly of MatrixSymbol's rather than Matrix
> objects. Probably there is a nice way to make both feasible. For my GSOC
> project I needed Block Matrices so those are better developed. There is a
> blogpost demonstrating them here.
>
>
> On Fri, Jul 29, 2011 at 7:49 PM, Mateusz Paprocki <matt...@gmail.com> wrote:
>>
>> Hi,
>>
>> On 16 July 2011 00:12, Ondrej Certik <ondrej.cer...@gmail.com> wrote:
>>>
>>> On Fri, Jul 15, 2011 at 9:17 AM, Andy Ray Terrel <andy.ter...@gmail.com>
>>> wrote:
>>> > My suggestion would be to continue with the matrixify solution and
>>> > write functions to fix up the expression tree as need be.  The whole
>>> > issue of making Add/Mul/Pow extensible is separate but the logic can
>>> > be transferred pretty easily.
>>>
>>> Exactly. Just get the job done, implement the necessary code, and
>>> whether or not Add/Mul/Pow classes can be extended is a separate
>>> issue, and I would suggest not to, to keep things simple in the core,
>>> so that we can refactor once we finish the assumptions refactoring.
>>
>> btw. Here is my interpretation of matrix
>> expressions: https://github.com/mattpap/sympy/tree/matrix_expr. Currently it
>> doesn't implement matrix expression arithmetic, but most certainly I'm not
>> going to allow a*M or A + B to "doit" by default, rather I will implement
>> this within expand() framework. What I need are semi evaluated matrix
>> expressions, so det(A^T) can be rewritten to det(A), but a*M must remain
>> unevaluated. This branch is very preliminary, there are no tests for the new
>> stuff and I didn't run tests so a few things may be broken
>>
>>>
>>> Ondrej
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "sympy" group.
>>> To post to this group, send email to sympy@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> sympy+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/sympy?hl=en.
>>>
>>
>> Mateusz
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sympy" group.
>> To post to this group, send email to sympy@googlegroups.com.
>> To unsubscribe from this group, send email to
>> sympy+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/sympy?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sympy@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to