#16553: Clean IncidenceStructure
-------------------------------------+-------------------------------------
       Reporter:  vdelecroix         |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.3
      Component:  combinatorial      |   Resolution:
  designs                            |    Merged in:
       Keywords:                     |    Reviewers:
        Authors:  Nathann Cohen,     |  Work issues:
  Vincent Delecroix                  |       Commit:
Report Upstream:  N/A                |  b8012e72038dffa51cc60b0af19283881dec2860
         Branch:  public/16553v2     |     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------

Comment (by vdelecroix):

 Replying to [comment:75 ncohen]:
 > Okay, three questions :
 >
 > - Should !BlockDesign be deprecated ?

 It is cool to have as an alias for incidence structure. If you find
 confusing to have an alias, then yes we should deprecate it.

 > - is `self._degrees_cache` used anywhere ? If not, remove it

 Not anymore. I will.

 > - `self._incidence_matrix` is set to None even when the Incidence
 Structure has been defined from the incidence matrix

 Yes, because of the reordering of the columns. But we can avoid reordering
 the columns and keep the matrix. But then, matrices are mutable...
 hopefully, we can do `m.set_immutable()` as soon as we use it.

 > - `is_simple()` does not work when the input is not copied and not
 necessarily sorted.

 And the implementation is stupid, if the blocks are sorted, one would do
 {{{
 B = self._blocks
 return any(B[i] == B[i+1] for i in xrange(len(B)-1))
 }}}


 And... Haaaa.... it is very bad to reorder the blocks:
 {{{
 sage: D = designs.IncidenceStructure(2, [[0]])
 sage: D == D.dual().dual()
 False
 }}}
 Taking dual should just be matrix transposition!! One question: what do
 you think of '''not''' reordering the blocks? (which is a different from
 the question "sorting each block")

 Vincent

--
Ticket URL: <http://trac.sagemath.org/ticket/16553#comment:79>
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to