¶AUTHORS:
Bases: sage.combinat.rigged_configurations.rc_infinity.InfinityCrystalOfRiggedConfigurations
Rigged configurations for
in non-simply-laced types.
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()
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]
sage: al = RC.weight_lattice_realization().simple_roots()
sage: wt == al[0] + al[1] + 2*al[2] + al[3] + al[4]
True
Convert vrc in the virtual crystal into a rigged configution of the original Cartan type.
INPUT:
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
Convert rc into a rigged configuration in the virtual crystal.
INPUT:
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]
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]
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:
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()
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()
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()
0
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 method RiggedConfigurations.global_options of RiggedConfigurations.
OPTIONS:
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 the convention 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.