Affinization Crystals#
- class sage.combinat.crystals.affinization.AffinizationOfCrystal(B)[source]#
Bases:
UniqueRepresentation
,Parent
An affinization of a crystal.
Let \(\mathfrak{g}\) be a Kac-Moody algebra of affine type. The affinization of a finite \(U_q^{\prime}(\mathfrak{g})\)-crystal \(B\) is the (infinite) \(U_q(\mathfrak{g})\)-crystal with underlying set:
\[B^{\mathrm{aff}} = \{ b(m) \mid b \in B, m \in \ZZ \}\]and crystal structure determined by:
\[\begin{split}\begin{aligned} e_i(b(m)) & = \begin{cases} (e_0 b)(m+1) & i = 0, \\ (e_i b)(m) & i \neq 0, \end{cases} \\ f_i(b(m)) &= \begin{cases} (f_0 b)(m-1) & i = 0, \\ (f_i b)(m) & i \neq 0, \end{cases} \\ \mathrm{wt}(b(m)) &= \mathrm{wt}(b) + m \delta. \end{aligned}\end{split}\]EXAMPLES:
We first construct a Kirillov-Reshetikhin crystal and then take it’s corresponding affinization:
sage: K = crystals.KirillovReshetikhin(['A',2,1], 2, 2) sage: A = K.affinization()
>>> from sage.all import * >>> K = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2), Integer(2)) >>> A = K.affinization()
Next we construct an affinization crystal from a tensor product of KR crystals:
sage: KT = crystals.TensorProductOfKirillovReshetikhinTableaux(['C',2,1], [[1,2],[2,1]]) sage: A = crystals.AffinizationOf(KT)
>>> from sage.all import * >>> KT = crystals.TensorProductOfKirillovReshetikhinTableaux(['C',Integer(2),Integer(1)], [[Integer(1),Integer(2)],[Integer(2),Integer(1)]]) >>> A = crystals.AffinizationOf(KT)
REFERENCES:
[HK2002] Chapter 10
- class Element(parent, b, m)[source]#
Bases:
Element
An element in an affinization crystal.
- e(i)[source]#
Return the action of \(e_i\) on
self
.INPUT:
i
– an element of the index set
EXAMPLES:
sage: A = crystals.KirillovReshetikhin(['A',2,1], 2,2).affinization() sage: mg = A.module_generators[0] sage: mg.e(0) [[1, 2], [2, 3]](1) sage: mg.e(1) sage: mg.e(0).e(1) [[1, 1], [2, 3]](1)
>>> from sage.all import * >>> A = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2),Integer(2)).affinization() >>> mg = A.module_generators[Integer(0)] >>> mg.e(Integer(0)) [[1, 2], [2, 3]](1) >>> mg.e(Integer(1)) >>> mg.e(Integer(0)).e(Integer(1)) [[1, 1], [2, 3]](1)
- epsilon(i)[source]#
Return \(\varepsilon_i\) of
self
.INPUT:
i
– an element of the index set
EXAMPLES:
sage: A = crystals.KirillovReshetikhin(['A',2,1], 2,2).affinization() sage: mg = A.module_generators[0] sage: mg.epsilon(0) 2 sage: mg.epsilon(1) 0
>>> from sage.all import * >>> A = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2),Integer(2)).affinization() >>> mg = A.module_generators[Integer(0)] >>> mg.epsilon(Integer(0)) 2 >>> mg.epsilon(Integer(1)) 0
- f(i)[source]#
Return the action of \(f_i\) on
self
.INPUT:
i
– an element of the index set
EXAMPLES:
sage: A = crystals.KirillovReshetikhin(['A',2,1], 2,2).affinization() sage: mg = A.module_generators[0] sage: mg.f(2) [[1, 1], [2, 3]](0) sage: mg.f(2).f(2).f(0) sage: mg.f_string([2,1,1]) sage: mg.f_string([2,1]) [[1, 2], [2, 3]](0) sage: mg.f_string([2,1,0]) [[1, 1], [2, 2]](-1)
>>> from sage.all import * >>> A = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2),Integer(2)).affinization() >>> mg = A.module_generators[Integer(0)] >>> mg.f(Integer(2)) [[1, 1], [2, 3]](0) >>> mg.f(Integer(2)).f(Integer(2)).f(Integer(0)) >>> mg.f_string([Integer(2),Integer(1),Integer(1)]) >>> mg.f_string([Integer(2),Integer(1)]) [[1, 2], [2, 3]](0) >>> mg.f_string([Integer(2),Integer(1),Integer(0)]) [[1, 1], [2, 2]](-1)
- phi(i)[source]#
Return \(\varphi_i\) of
self
.INPUT:
i
– an element of the index set
EXAMPLES:
sage: A = crystals.KirillovReshetikhin(['A',2,1], 2,2).affinization() sage: mg = A.module_generators[0] sage: mg.phi(0) 0 sage: mg.phi(2) 2
>>> from sage.all import * >>> A = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2),Integer(2)).affinization() >>> mg = A.module_generators[Integer(0)] >>> mg.phi(Integer(0)) 0 >>> mg.phi(Integer(2)) 2
- weight()[source]#
Return the weight of
self
.The weight \(\mathrm{wt}\) of an element is:
\[\mathrm{wt}\bigl( b(m) \bigr) = \mathrm{wt}(b) + m \delta,\]where \(\delta\) is the null root.
EXAMPLES:
sage: A = crystals.KirillovReshetikhin(['A',2,1], 2,2).affinization() sage: mg = A.module_generators[0] sage: mg.weight() -2*Lambda[0] + 2*Lambda[2] sage: mg.e(0).weight() -Lambda[1] + Lambda[2] + delta sage: mg.e(0).e(0).weight() 2*Lambda[0] - 2*Lambda[1] + 2*delta
>>> from sage.all import * >>> A = crystals.KirillovReshetikhin(['A',Integer(2),Integer(1)], Integer(2),Integer(2)).affinization() >>> mg = A.module_generators[Integer(0)] >>> mg.weight() -2*Lambda[0] + 2*Lambda[2] >>> mg.e(Integer(0)).weight() -Lambda[1] + Lambda[2] + delta >>> mg.e(Integer(0)).e(Integer(0)).weight() 2*Lambda[0] - 2*Lambda[1] + 2*delta