Möbius Algebras¶
-
class
sage.combinat.posets.moebius_algebra.
BasisAbstract
(R, basis_keys, element_class=None, category=None, prefix='B', **kwds)¶ Bases:
sage.combinat.free_module.CombinatorialFreeModule
,sage.misc.bindable_class.BindableClass
Abstract base class for a basis.
-
class
sage.combinat.posets.moebius_algebra.
MoebiusAlgebra
(R, L)¶ Bases:
sage.structure.parent.Parent
,sage.structure.unique_representation.UniqueRepresentation
The Möbius algebra of a lattice.
Let
be a lattice. The Möbius algebra
was originally constructed by Solomon [Solomon67] and has a natural basis
with multiplication given by
. Moreover this has a basis given by orthogonal idempotents
(so
where
is the Kronecker delta) related to the natural basis by
where
is the Möbius function of
.
Note
We use the join
for our multiplication, whereas [Greene73] and [Etienne98] define the Möbius algebra using the meet
. This is done for compatibility with
QuantumMoebiusAlgebra
.REFERENCES:
[Solomon67] Louis Solomon. The Burnside Algebra of a Finite Group. Journal of Combinatorial Theory, 2, 1967. doi:10.1016/S0021-9800(67)80064-4. [Greene73] Curtis Greene. On the Möbius algebra of a partially ordered set. Advances in Mathematics, 10, 1973. doi:10.1016/0001-8708(73)90106-0. [Etienne98] Gwihen Etienne. On the Möbius algebra of geometric lattices. European Journal of Combinatorics, 19, 1998. doi:10.1006/eujc.1998.0227. -
class
E
(M, prefix='E')¶ Bases:
sage.combinat.posets.moebius_algebra.BasisAbstract
The natural basis of a Möbius algebra.
Let
and
be basis elements of
for some lattice
. Multiplication is given by
.
-
one
()¶ Return the element
1
ofself
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: E = L.moebius_algebra(QQ).E() sage: E.one() E[0]
-
product_on_basis
(x, y)¶ Return the product of basis elements indexed by
x
andy
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: E = L.moebius_algebra(QQ).E() sage: E.product_on_basis(5, 14) E[15] sage: E.product_on_basis(2, 8) E[10]
TESTS:
sage: M = posets.BooleanLattice(4).moebius_algebra(QQ) sage: E = M.E() sage: I = M.I() sage: all(I(x)*I(y) == I(x*y) for x in E.basis() for y in E.basis()) True
-
-
class
MoebiusAlgebra.
I
(M, prefix='I')¶ Bases:
sage.combinat.posets.moebius_algebra.BasisAbstract
The (orthogonal) idempotent basis of a Möbius algebra.
Let
and
be basis elements of
for some lattice
. Multiplication is given by
where
is the Kronecker delta.
-
one
()¶ Return the element
1
ofself
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: I = L.moebius_algebra(QQ).I() sage: I.one() I[0] + I[1] + I[2] + I[3] + I[4] + I[5] + I[6] + I[7] + I[8] + I[9] + I[10] + I[11] + I[12] + I[13] + I[14] + I[15]
-
product_on_basis
(x, y)¶ Return the product of basis elements indexed by
x
andy
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: I = L.moebius_algebra(QQ).I() sage: I.product_on_basis(5, 14) 0 sage: I.product_on_basis(2, 2) I[2]
TESTS:
sage: M = posets.BooleanLattice(4).moebius_algebra(QQ) sage: E = M.E() sage: I = M.I() sage: all(E(x)*E(y) == E(x*y) for x in I.basis() for y in I.basis()) True
-
-
MoebiusAlgebra.
a_realization
()¶ Return a particular realization of
self
(the-basis).
EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: M = L.moebius_algebra(QQ) sage: M.a_realization() Moebius algebra of Finite lattice containing 16 elements over Rational Field in the natural basis
-
MoebiusAlgebra.
lattice
()¶ Return the defining lattice of
self
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: M = L.moebius_algebra(QQ) sage: M.lattice() Finite lattice containing 16 elements
For technical reasons (the defining lattice is forced to be a non-facade lattice), the result is not equal to
L
:sage: M.lattice() == L False
However it is isomorphic:
sage: M.lattice().is_isomorphic(L) True
-
class
-
class
sage.combinat.posets.moebius_algebra.
MoebiusAlgebraBases
(parent_with_realization)¶ Bases:
sage.categories.realizations.Category_realization_of_parent
The category of bases of a Möbius algebra.
INPUT:
base
– a Möbius algebra
TESTS:
sage: from sage.combinat.posets.moebius_algebra import MoebiusAlgebraBases sage: M = posets.BooleanLattice(4).moebius_algebra(QQ) sage: bases = MoebiusAlgebraBases(M) sage: M.E() in bases True
-
class
ElementMethods
¶
-
class
MoebiusAlgebraBases.
ParentMethods
¶ -
one
()¶ Return the element
1
ofself
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: C = L.quantum_moebius_algebra().C() sage: all(C.one() * b == b for b in C.basis()) True
-
product_on_basis
(x, y)¶ Return the product of basis elements indexed by
x
andy
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: C = L.quantum_moebius_algebra().C() sage: C.product_on_basis(5, 14) q^3*C[15] sage: C.product_on_basis(2, 8) q^4*C[10]
-
-
MoebiusAlgebraBases.
super_categories
()¶ The super categories of
self
.EXAMPLES:
sage: from sage.combinat.posets.moebius_algebra import MoebiusAlgebraBases sage: M = posets.BooleanLattice(4).moebius_algebra(QQ) sage: bases = MoebiusAlgebraBases(M) sage: bases.super_categories() [Category of finite dimensional commutative algebras with basis over Rational Field, Category of realizations of Moebius algebra of Finite lattice containing 16 elements over Rational Field]
-
class
sage.combinat.posets.moebius_algebra.
QuantumMoebiusAlgebra
(L, q=None)¶ Bases:
sage.structure.parent.Parent
,sage.structure.unique_representation.UniqueRepresentation
The quantum Möbius algebra of a lattice.
Let
be a lattice, and we define the quantum Möbius algebra
as the algebra with basis
with multiplication given by
where
is the Möbius function of
and
is the corank function (i.e.,
a). At
, this reduces to the multiplication formula originally given by Solomon.
-
class
C
(M, prefix='C')¶ Bases:
sage.combinat.posets.moebius_algebra.BasisAbstract
The characteristic basis of a quantum Möbius algebra.
The characteristic basis
of
for some lattice
is defined by
where
is the principal order filter of
and
is the characteristic polynomial of the (sub)poset
.
-
class
QuantumMoebiusAlgebra.
E
(M, prefix='E')¶ Bases:
sage.combinat.posets.moebius_algebra.BasisAbstract
The natural basis of a quantum Möbius algebra.
Let
and
be basis elements of
for some lattice
. Multiplication is given by
where
is the Möbius function of
and
is the corank function (i.e.,
a).
-
one
()¶ Return the element
1
ofself
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: E = L.quantum_moebius_algebra().E() sage: all(E.one() * b == b for b in E.basis()) True
-
product_on_basis
(x, y)¶ Return the product of basis elements indexed by
x
andy
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: E = L.quantum_moebius_algebra().E() sage: E.product_on_basis(5, 14) E[15] sage: E.product_on_basis(2, 8) q^2*E[10] + (q-q^2)*E[11] + (q-q^2)*E[14] + (1-2*q+q^2)*E[15]
-
-
class
QuantumMoebiusAlgebra.
KL
(M, prefix='KL')¶ Bases:
sage.combinat.posets.moebius_algebra.BasisAbstract
The Kazhdan-Lusztig basis of a quantum Möbius algebra.
The Kazhdan-Lusztig basis
of
for some lattice
is defined by
where
is the Kazhdan-Lusztig polynomial of
, following the definition given in [EPW14].
EXAMPLES:
We construct some examples of Proposition 4.5 of [EPW14]:
sage: M = posets.BooleanLattice(4).quantum_moebius_algebra() sage: KL = M.KL() sage: KL[4] * KL[5] (q^2+q^3)*KL[5] + (q+2*q^2+q^3)*KL[7] + (q+2*q^2+q^3)*KL[13] + (1+3*q+3*q^2+q^3)*KL[15] sage: KL[4] * KL[15] (1+3*q+3*q^2+q^3)*KL[15] sage: KL[4] * KL[10] (q+3*q^2+3*q^3+q^4)*KL[14] + (1+4*q+6*q^2+4*q^3+q^4)*KL[15]
-
QuantumMoebiusAlgebra.
a_realization
()¶ Return a particular realization of
self
(the-basis).
EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: M = L.quantum_moebius_algebra() sage: M.a_realization() Quantum Moebius algebra of Finite lattice containing 16 elements with q=q over Univariate Laurent Polynomial Ring in q over Integer Ring in the natural basis
-
QuantumMoebiusAlgebra.
lattice
()¶ Return the defining lattice of
self
.EXAMPLES:
sage: L = posets.BooleanLattice(4) sage: M = L.quantum_moebius_algebra() sage: M.lattice() Finite lattice containing 16 elements sage: M.lattice() == L True
-
class