Corrects the Differential Extension:

     The following PR corrects the differential extension of the test
case in risch.py under test_recognize_log_derivative. It changes
DE = DifferentialExtension(extension={'D': [Poly(1, x), Poly(1, t)]}) to
DE = DifferentialExtension(extension={'D': [Poly(1, x)]}) and also adds
the case where DE = DifferentialExtension(extension={'D': [Poly(1, x), Poly(t**2 + 1, t]})
Merge pull request #2384 from cheatiiit/correct_predict

DE in test_risch.py (test_recognize_log_derivative)
Rebasingsympy/integrals/tests/test_risch.py
SparseMatrix Arithmetic
A new function for sparse-vector multiplication with domain as arguments
New function for Matrix Vector Multiplication. Also included domains as the argument
The first operations are added _add and _sub. I have a clear direction for _mulspsp and  will commit that tomorrow. Tests are not added yet. This commit is simply to show others what I am up to.
I have removed--

_add and _sub. will later implement the same code as in sparse.py but in procedurally

I have added--

_mulscsp for multiplication of a matrix in csr representation by a scaler.

_mulspsp, _mulspsp2, _mulspsp3 are three implementation of mulitplications of sparse matrices. Profile results can be found in [1]

_mulspvec multiplication of sparse matrix by a vector. It is much faster than earlier implementation. [1]

_applyfunc applies the function to all elements of a matrix in csr representation. Takes slightly less function calls than earlier one [1]

I have implemented CSR counterpart to these algorithms because I intend to use CSR representation to store the matrix internally. The reason are-
--CSR takes less space than DOK
--If DOK is needed, like in addition or subtraction or in sparse*sparse, CSRtoDOK conversion is quite fast.
--Code is much simpler to understand and hence less clumsy.

[1] http://sympymatrix.blogspot.in/2013/06/week-25-profiling-of-different.html
Addition of transpose and trace
Preliminary operations of dense matrix
Basic Level 0 of dense, commented lines are TODO
Removed unwanted changes
Removed silly mistakes
Changes only for profiling, will be removed subsequently
Arithmetics of sparse
added a function to compute rref and minor book-keeping changes
LU decomposition
Added Row Echelon, cholesky and improved the things in general
Adding new operations
adding doctstrings