Rigged Configurations of
¶
AUTHORS:
- Travis Scrimshaw (2013-04-16): Initial version
-
class
sage.combinat.rigged_configurations.rc_infinity.
InfinityCrystalOfNonSimplyLacedRC
(vct)¶ Bases:
sage.combinat.rigged_configurations.rc_infinity.InfinityCrystalOfRiggedConfigurations
Rigged configurations for
in non-simply-laced types.
-
class
Element
(parent, rigged_partitions=[], **options)¶ Bases:
sage.combinat.rigged_configurations.rigged_configuration_element.RCNonSimplyLacedElement
A rigged configuration in
in non-simply-laced types.
TESTS:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 3]) sage: elt = RC(partition_list=[[1],[1,1],[1]]) sage: TestSuite(elt).run()
-
weight
()¶ Return the weight of
self
.EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 3]) sage: elt = RC(partition_list=[[1],[1,1],[1]], rigging_list=[[0],[-1,-1],[0]]) sage: elt.weight() (-1, -1, 0) sage: RC = crystals.infinity.RiggedConfigurations(['F', 4, 1]) sage: mg = RC.highest_weight_vector() sage: elt = mg.f_string([1,0,3,4,2,2]); ascii_art(elt) -1[ ]-1 0[ ]1 -2[ ][ ]-2 0[ ]1 -1[ ]-1 sage: wt = elt.weight(); wt -Lambda[0] + Lambda[1] - 2*Lambda[2] + 3*Lambda[3] - Lambda[4] - delta sage: al = RC.weight_lattice_realization().simple_roots() sage: wt == -(al[0] + al[1] + 2*al[2] + al[3] + al[4]) True
-
-
InfinityCrystalOfNonSimplyLacedRC.
from_virtual
(vrc)¶ Convert
vrc
in the virtual crystal into a rigged configution of the original Cartan type.INPUT:
vrc
– a virtual rigged configuration
EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 2]) sage: elt = RC(partition_list=[[3],[2]], rigging_list=[[-2],[0]]) sage: vrc_elt = RC.to_virtual(elt) sage: ret = RC.from_virtual(vrc_elt); ret -3[ ][ ][ ]-2 -1[ ][ ]0 sage: ret == elt True
-
InfinityCrystalOfNonSimplyLacedRC.
to_virtual
(rc)¶ Convert
rc
into a rigged configuration in the virtual crystal.INPUT:
rc
– a rigged configuration element
EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 2]) sage: mg = RC.highest_weight_vector() sage: elt = mg.f_string([1,2,2,1,1]); elt -3[ ][ ][ ]-2 -1[ ][ ]0 sage: velt = RC.to_virtual(elt); velt -3[ ][ ][ ]-2 -2[ ][ ][ ][ ]0 -3[ ][ ][ ]-2 sage: velt.parent() The infinity crystal of rigged configurations of type ['A', 3]
-
InfinityCrystalOfNonSimplyLacedRC.
virtual
()¶ Return the corresponding virtual crystal.
EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 3]) sage: RC The infinity crystal of rigged configurations of type ['C', 3] sage: RC.virtual The infinity crystal of rigged configurations of type ['A', 5]
-
class
-
class
sage.combinat.rigged_configurations.rc_infinity.
InfinityCrystalOfRiggedConfigurations
(cartan_type)¶ Bases:
sage.structure.parent.Parent
,sage.structure.unique_representation.UniqueRepresentation
Rigged configuration model for
.
The crystal is generated by the empty rigged configuration with the same crystal structure given by the
highest weight model
except we remove the condition that the resulting rigged configuration needs to be valid when applying.
INPUT:
cartan_type
– a Cartan type
EXAMPLES:
For simplicity, we display all of the rigged configurations horizontally:
sage: RiggedConfigurations.global_options(display='horizontal')
We begin with a simply-laced finite type:
sage: RC = crystals.infinity.RiggedConfigurations(['A', 3]); RC The infinity crystal of rigged configurations of type ['A', 3] sage: RC.global_options(display='horizontal') sage: mg = RC.highest_weight_vector(); mg (/) (/) (/) sage: elt = mg.f_string([2,1,3,2]); elt 0[ ]0 -2[ ]-1 0[ ]0 -2[ ]-1 sage: elt.e(1) sage: elt.e(3) sage: mg.f_string([2,1,3,2]).e(2) -1[ ]-1 0[ ]1 -1[ ]-1 sage: mg.f_string([2,3,2,1,3,2]) 0[ ]0 -3[ ][ ]-1 -1[ ][ ]-1 -2[ ]-1
Next we consider a non-simply-laced finite type:
sage: RC = crystals.infinity.RiggedConfigurations(['C', 3]) sage: mg = RC.highest_weight_vector() sage: mg.f_string([2,1,3,2]) 0[ ]0 -2[ ]-1 0[ ]0 -2[ ]-1 sage: mg.f_string([2,3,2,1,3,2]) -1[ ]-1 -2[ ][ ][ ]-1 -1[ ][ ]0
We can also construct
using rigged configurations in affine types:
sage: RC = crystals.infinity.RiggedConfigurations(['A', 3, 1]) sage: mg = RC.highest_weight_vector() sage: mg.f_string([0,1,2,3,0,1,3]) -1[ ]0 -1[ ]-1 1[ ]1 -1[ ][ ]-1 -1[ ]0 -1[ ]-1 sage: RC = crystals.infinity.RiggedConfigurations(['C', 3, 1]) sage: mg = RC.highest_weight_vector() sage: mg.f_string([1,2,3,0,1,2,3,3,0]) -2[ ][ ]-1 -1[ ]0 -1[ ]-1 -4[ ][ ][ ]-2 -1[ ]0 -1[ ]-1 sage: RC = crystals.infinity.RiggedConfigurations(['A', 6, 2]) sage: mg = RC.highest_weight_vector() sage: mg.f_string([1,2,3,0,1,2,3,3,0]) 0[ ]-1 0[ ]1 -1[ ]-1 -4[ ][ ][ ]-2 0[ ]-1 0[ ]1 -1[ ]-1
We reset the global options:
sage: RiggedConfigurations.global_options.reset()
-
class
Element
(parent, rigged_partitions=[], **options)¶ Bases:
sage.combinat.rigged_configurations.rigged_configuration_element.RiggedConfigurationElement
A rigged configuration in
in simply-laced types.
TESTS:
sage: RC = crystals.infinity.RiggedConfigurations(['A', 3, 1]) sage: elt = RC(partition_list=[[1,1]]*4, rigging_list=[[1,1], [0,0], [0,0], [-1,-1]]) sage: TestSuite(elt).run()
-
weight
()¶ Return the weight of
self
.EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['A', 3, 1]) sage: elt = RC(partition_list=[[1,1]]*4, rigging_list=[[1,1], [0,0], [0,0], [-1,-1]]) sage: elt.weight() -2*delta
-
-
InfinityCrystalOfRiggedConfigurations.
global_options
(*get_value, **set_value)¶ Sets and displays the global options for rigged configurations. If no parameters are set, then the function returns a copy of the options dictionary.
The
options
to partitions can be accessed as the methodRiggedConfigurations.global_options
ofRiggedConfigurations
.OPTIONS:
convention
– (default:English
) Sets the convention used for displaying tableaux and partitionsEnglish
– use the English conventionFrench
– use the French convention
display
– (default:vertical
) Specifies how rigged configurations should be printedhorizontal
– displayed horizontallyvertical
– displayed vertically
element_ascii_art
– (default:True
) display using the repr optionelement_ascii_art
half_width_boxes_type_b
– (default:True
) display the last rigged partition in affine type B as half width boxesnotation
– alternative name forconvention
EXAMPLES:
sage: RC = RiggedConfigurations(['A',3,1], [[2,2],[1,1],[1,1]]) sage: elt = RC(partition_list=[[3,1], [3], [1]]) sage: elt -3[ ][ ][ ]-3 -1[ ]-1 1[ ][ ][ ]1 -1[ ]-1 sage: RiggedConfigurations.global_options(display="horizontal", convention="french") sage: elt -1[ ]-1 1[ ][ ][ ]1 -1[ ]-1 -3[ ][ ][ ]-3
Changing the
convention
for rigged configurations also changes theconvention
option for tableaux and vice versa:sage: T = Tableau([[1,2,3],[4,5]]) sage: T.pp() 4 5 1 2 3 sage: Tableaux.global_options(convention="english") sage: elt -3[ ][ ][ ]-3 1[ ][ ][ ]1 -1[ ]-1 -1[ ]-1 sage: T.pp() 1 2 3 4 5 sage: RiggedConfigurations.global_options.reset()
See
GlobalOptions
for more features of these options.
-
InfinityCrystalOfRiggedConfigurations.
weight_lattice_realization
()¶ Return the weight lattice realization used to express the weights of elements in
self
.EXAMPLES:
sage: RC = crystals.infinity.RiggedConfigurations(['A', 2, 1]) sage: RC.weight_lattice_realization() Extended weight lattice of the Root system of type ['A', 2, 1]