#17216: Poset / LatticePoset: [meet|join]matrix algorithm
-------------------------------------+-------------------------------------
       Reporter:  jmantysalo         |        Owner:
           Type:  enhancement        |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-6.4
      Component:  combinatorics      |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Jori Mäntysalo     |    Reviewers:  Nathann Cohen
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/jmantysalo/poset___latticeposet___meet_join_matrix_algorithm|  
a649be931b249028ff1e5961fc948c2daf50c695
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by tscrim):

 * status:  needs_info => needs_work


Comment:

 First off, I changed the status because there was no evidence that people
 had run any timings. This is why I changed it to `needs_info`. I never
 trust code that ''should'' be faster to really be faster; overhead and
 idiosyncrasies of python can make things slower, even if asymptotically it
 is a better algorithm (my go-to example is sorting, for (very) small
 lists, we just use bubble sort because of overhead). Also the algorithm to
 check that the finite poset is a lattice has changed (using `has_top` and
 `has_bottom` instead of the matrix).

 Categories also can carry mathematical information as well, in particular
 for morphisms. The issue I'm raising about why the method needs to be
 deprecated is this. Suppose I have some personal code for a finite poset
 that does not inherit from `FinitePoset`, but is a parent belonging to the
 category of `FinitePosets`. Thus I have `is_lattice` from the category.
 However, with this patch, all of a sudden my code is (horribly) broken
 because I no longer have the `is_lattice` method.

 There is likely some duplication from things in `FinitePoset` that should
 be up in the category coming from the initial implementation of the class
 and when we transitioned to using categories. So what should happen is you
 should delete the method in the `FinitePoset` class (which doesn't need a
 deprecation because you get it from the category).

--
Ticket URL: <http://trac.sagemath.org/ticket/17216#comment:17>
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