#13949: Make mutability on matrices a simple bint flag
----------------------------------+-----------------------------------------
       Reporter:  nbruin          |         Owner:  jason, was    
           Type:  enhancement     |        Status:  needs_review  
       Priority:  major           |     Milestone:  sage-5.7      
      Component:  linear algebra  |    Resolution:                
       Keywords:                  |   Work issues:                
Report Upstream:  N/A             |     Reviewers:  David Loeffler
        Authors:  Nils Bruin      |     Merged in:                
   Dependencies:                  |      Stopgaps:                
----------------------------------+-----------------------------------------
Changes (by davidloeffler):

 * cc: roed (added)
  * reviewer:  => David Loeffler


Old description:

> Presently, proper initialization of a `Matrix` (inherited) object implies
> the creation of a `Mutability` object, which needs a memory allocation of
> its own. Since it's just a single flag, `Matrix` can just have this
> without linking to a separate class. Hopefully this speeds up Matrix
> creation sufficiently that `sage.matrix.matrix_integer_2x2` can afford to
> just call it.
>
> See [https://groups.google.com/group/sage-
> devel/browse_thread/thread/acb447112595cc35?hl=en this sage-devel]
> thread.
> ---------------------
> Instructions:
> - apply [attachment:trac_13949-change_mutability.patch]
> - apply [attachment:trac_13949-fix_integer_dense_cinit.patch]

New description:

 Presently, proper initialization of a `Matrix` (inherited) object implies
 the creation of a `Mutability` object, which needs a memory allocation of
 its own. Since it's just a single flag, `Matrix` can just have this
 without linking to a separate class. Hopefully this speeds up Matrix
 creation sufficiently that `sage.matrix.matrix_integer_2x2` can afford to
 just call it.

 See [https://groups.google.com/group/sage-
 devel/browse_thread/thread/acb447112595cc35?hl=en this sage-devel] thread.
 ---------------------
 Instructions:
 - apply [attachment:trac_13949-change_mutability.patch]
 - apply [attachment:trac_13949-fix_integer_dense_cinit.patch]
 - apply [attachment:trac_13949-doctest.patch]

--

Comment:

 I'm happy with this, but I thought it was best to add the original failing
 example from the sage-devel thread as a doctest, to make double-sure it
 doesn't get broken again. Can someone else OK my very tiny patch?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13949#comment:15>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to