Finite lattice posets¶

class
sage.categories.finite_lattice_posets.
FiniteLatticePosets
(base_category)¶ Bases:
sage.categories.category_with_axiom.CategoryWithAxiom
The category of finite lattices, i.e. finite partially ordered sets which are also lattices.
EXAMPLES:
sage: FiniteLatticePosets() Category of finite lattice posets sage: FiniteLatticePosets().super_categories() [Category of lattice posets, Category of finite posets] sage: FiniteLatticePosets().example() NotImplemented
See also

class
ParentMethods
¶ 
irreducibles_poset
()¶ Return the poset of meet or joinirreducibles of the lattice.
A joinirreducible element of a lattice is an element with exactly one lower cover. Dually a meetirreducible element has exactly one upper cover.
This is the smallest poset with completion by cuts being isomorphic to the lattice. As a special case this returns oneelement poset from oneelement lattice.
See also
EXAMPLES:
sage: L = LatticePoset({1: [2, 3, 4], 2: [5, 6], 3: [5], ....: 4: [6], 5: [9, 7], 6: [9, 8], 7: [10], ....: 8: [10], 9: [10], 10: [11]}) sage: L_ = L.irreducibles_poset() sage: sorted(L_) [2, 3, 4, 7, 8, 9, 10, 11] sage: L_.completion_by_cuts().is_isomorphic(L) True

is_lattice_morphism
(f, codomain)¶ Return whether
f
is a morphism of posets fromself
tocodomain
.A map \(f : P \to Q\) is a poset morphism if
\[x \leq y \Rightarrow f(x) \leq f(y)\]for all \(x,y \in P\).
INPUT:
f
– a function fromself
tocodomain
codomain
– a lattice
EXAMPLES:
We build the boolean lattice of \(\{2,2,3\}\) and the lattice of divisors of \(60\), and check that the map \(b \mapsto 5 \prod_{x\in b} x\) is a morphism of lattices:
sage: D = LatticePoset((divisors(60), attrcall("divides"))) sage: B = LatticePoset((Subsets([2,2,3]), attrcall("issubset"))) sage: def f(b): return D(5*prod(b)) sage: B.is_lattice_morphism(f, D) True
We construct the boolean lattice \(B_2\):
sage: B = posets.BooleanLattice(2) sage: B.cover_relations() [[0, 1], [0, 2], [1, 3], [2, 3]]
And the same lattice with new top and bottom elements numbered respectively \(1\) and \(3\):
sage: L = LatticePoset(DiGraph({1:[0], 0:[1,2], 1:[3], 2:[3],3:[4]})) sage: L.cover_relations() [[1, 0], [0, 1], [0, 2], [1, 3], [2, 3], [3, 4]] sage: f = { B(0): L(0), B(1): L(1), B(2): L(2), B(3): L(3) }.__getitem__ sage: B.is_lattice_morphism(f, L) True sage: f = { B(0): L(1),B(1): L(1), B(2): L(2), B(3): L(3) }.__getitem__ sage: B.is_lattice_morphism(f, L) False sage: f = { B(0): L(0), B(1): L(1), B(2): L(2), B(3): L(4) }.__getitem__ sage: B.is_lattice_morphism(f, L) False
See also

join_irreducibles
()¶ Return the joinirreducible elements of this finite lattice.
A joinirreducible element of
self
is an element \(x\) that is not minimal and that can not be written as the join of two elements different from \(x\).EXAMPLES:
sage: L = LatticePoset({0:[1,2],1:[3],2:[3,4],3:[5],4:[5]}) sage: L.join_irreducibles() [1, 2, 4]
See also
 Dual function:
meet_irreducibles()
 Other:
double_irreducibles()
,join_irreducibles_poset()
 Dual function:

join_irreducibles_poset
()¶ Return the poset of joinirreducible elements of this finite lattice.
A joinirreducible element of
self
is an element \(x\) that is not minimal and can not be written as the join of two elements different from \(x\).EXAMPLES:
sage: L = LatticePoset({0:[1,2,3],1:[4],2:[4],3:[4]}) sage: L.join_irreducibles_poset() Finite poset containing 3 elements
See also
 Dual function:
meet_irreducibles_poset()
 Other:
join_irreducibles()
 Dual function:

meet_irreducibles
()¶ Return the meetirreducible elements of this finite lattice.
A meetirreducible element of
self
is an element \(x\) that is not maximal and that can not be written as the meet of two elements different from \(x\).EXAMPLES:
sage: L = LatticePoset({0:[1,2],1:[3],2:[3,4],3:[5],4:[5]}) sage: L.meet_irreducibles() [1, 3, 4]
See also
 Dual function:
join_irreducibles()
 Other:
double_irreducibles()
,meet_irreducibles_poset()
 Dual function:

meet_irreducibles_poset
()¶ Return the poset of joinirreducible elements of this finite lattice.
A meetirreducible element of
self
is an element \(x\) that is not maximal and can not be written as the meet of two elements different from \(x\).EXAMPLES:
sage: L = LatticePoset({0:[1,2,3],1:[4],2:[4],3:[4]}) sage: L.join_irreducibles_poset() Finite poset containing 3 elements
See also
 Dual function:
join_irreducibles_poset()
 Other:
meet_irreducibles()
 Dual function:


class