Updates:
        Status: Valid

Comment #1 on issue 4114 by mrock...@gmail.com: ImmutableMatrix.is_zero is always False
http://code.google.com/p/sympy/issues/detail?id=4114

ImmutableMatrix uses multiple inheritance. It inherits first from MatrixExpr, and then from DenseMatrix. In this particular case we want to use DenseMatrix.is_zero rather than MatrixExpr.is_zero.

A deeper problem is that MatrixExpr has an is_zero property at all. MatrixExpr inherits from Basic, which, bewilderingly, has an is_zero property. My position here is that Basics should not have Expr-like properties.

The clean solution to this problem is to move the is_zero property from Basic to Expr. ImmutableMatrix should then correctly find and use DenseMatrix.is_zero rather than MatrixExpr/Basic.is_zero which should cease to exist.

The quick solution is to rewire ImmutableMatrix.is_zero to DenseMatrix.is_zero. If you search immutable.py for DenseMatrix you'll soon see a place where this has been done repeatedly.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
"sympy-issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy-issues+unsubscr...@googlegroups.com.
To post to this group, send email to sympy-issues@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy-issues.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to