#17216: Poset / LatticePoset: [meet|join]matrix algorithm
-------------------------------------+-------------------------------------
Reporter: jmantysalo | Owner:
Type: enhancement | Status: needs_info
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:
-------------------------------------+-------------------------------------
Comment (by ncohen):
> When is `is_lattice()` on category tried to run? I don't quite
understand --- what happens if both `finite_posets.py` on categories and
`posets.py` on combinats define same function?
Here is the thing: some guys in Sage rewrote method inheritance and call
that "categories". A Lattice belongs to several "categories" by default:
{{{
sage: LatticePoset(Poset()).category()
Join of Category of finite lattice posets and Category of finite
enumerated sets and Category of facade sets
}}}
Now, you can create any class and make it belong to the category of
`Lattices`. It will consequently inherit from the methods defined in the
"lattices" category file. This being said, `is_lattice` called
`is_join_semilattice` and `is_meet_semilattice` which are defined in the
usual `poset/lattices.py` file.
Which means that if you want the `is_lattice` method to work on an object
which is not an instance of `FiniteLattice`, then it must implement its
own `is_join_semilattice` and `is_meet_semilattice`.
And chances are that nobody ever did that, for removing that function from
the category while re-implementing it in the poset files did not break any
doctest.
Nathann
--
Ticket URL: <http://trac.sagemath.org/ticket/17216#comment:16>
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.