#18223: cartesian products with orders
-------------------------------------+-------------------------------------
       Reporter:  dkrenn             |        Owner:
           Type:  enhancement        |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-6.7
      Component:  categories         |   Resolution:
       Keywords:  sd67               |    Merged in:
        Authors:  Daniel Krenn       |    Reviewers:  Benjamin Hackl,
Report Upstream:  N/A                |  Vincent Delecroix
         Branch:  u/behackl/cat      |  Work issues:
  /cartesian-product-posets          |       Commit:
   Dependencies:  #18586             |  6ca3e5fd32c7fc5398ece1876ce5981f27663a60
                                     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by vdelecroix):

 * status:  needs_review => needs_work


Comment:

 16. The name `CartesianProductPosets` looks weird. I would rather go for
 `CartesianProductPoset` (no `s`) or `PosetsCartesianProduct`. As it is
 currently it looks like ''the set of posets that are made from cartesian
 products''.

 17. You should remove your name from `sage/sets/cartesian_product.py`. I
 have nothing agaist authorship but as it is, it looks like spam ;-)

 18. There is no example testing that the coercion can get involved in
 comparisons. Either it is worth it and it needs a use case or it can be
 removed.

 19. This is not nice
 {{{
 +        CartesianProductPosets = LazyImport(
 +            'sage.combinat.posets.cartesian_product',
 'CartesianProductPosets')
 +        CartesianProduct = CartesianProductPosets
 }}}
   because
 {{{
 sage: E = Posets().example()
 sage: E.Car<tab>
 E.CartesianProduct        E.CartesianProductPosets
 }}}
   which actually point toward the exact same thing. Please change for
 {{{
 +        CartesianProduct = LazyImport(
 +            'sage.combinat.posets.cartesian_product',
 'CartesianProductPosets')
 }}}

 And some questions:

 20. Most methods of finite posets are actually not available in this
 class... this is very annoying (but I do not see what can be done at the
 level of this ticket).

 21. Are you aware that
 {{{
 sage: C = cartesian_product([ZZ, ZZ], extra_category=Posets())
 sage: from sage.combinat.posets.cartesian_product import
 CartesianProductPosets
 sage: isinstance(C, CartesianProductPosets)
 False
 }}}
   and indeed
 {{{
 sage: TestSuite(C).run()
 Failure in _test_not_implemented_methods:
 ...
 AssertionError: Not implemented method: le
 ------------------------------------------------------------
 The following tests failed: _test_not_implemented_methods
 }}}

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