This file contains two sets of classes, one for the bijection from KR tableaux to rigged configurations and the other for the reverse bijection. We do this for two reasons, one is because we can store a state in the bijection locally, so we do not have to constantly pass it around between functions. The other is because it makes the code easier to read in the *_element.py files.
These classes are not meant to be used by the user and are only supposed to be used internally to perform the bijections between TensorProductOfKirillovReshetikhinTableaux and RiggedConfigurations.
AUTHORS:
Root abstract class for the bijection from KR tableaux to rigged configurations.
This class holds the state of the bijection and generates the next state. This class should never be created directly.
Build the next state in the bijection.
INPUT:
TESTS:
sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['A', 4, 1], [[2,1]])
sage: from sage.combinat.rigged_configurations.bij_type_A import KRTToRCBijectionTypeA
sage: bijection = KRTToRCBijectionTypeA(KRT(pathlist=[[5,3]]))
sage: bijection.cur_path.insert(0, [])
sage: bijection.cur_dims.insert(0, [0, 1])
sage: bijection.cur_path[0].insert(0, [3])
sage: bijection.next_state(3)
sage: bijection.ret_rig_con
-1[ ]-1
-1[ ]-1
(/)
(/)
Run the bijection from a tensor product of KR tableaux to a rigged configuration.
INPUT:
EXAMPLES:
sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['A', 4, 1], [[2, 1]])
sage: from sage.combinat.rigged_configurations.bij_type_A import KRTToRCBijectionTypeA
sage: KRTToRCBijectionTypeA(KRT(pathlist=[[5,2]])).run()
-1[ ]-1
1[ ]1
0[ ]0
-1[ ]-1
Root abstract class for the bijection from rigged configurations to tensor product of Kirillov-Reshetikhin tableaux.
This class holds the state of the bijection and generates the next state. This class should never be created directly.
Build the next state in the bijection.
TESTS:
sage: RC = RiggedConfigurations(['A', 4, 1], [[2, 1]])
sage: from sage.combinat.rigged_configurations.bij_type_A import RCToKRTBijectionTypeA
sage: bijection = RCToKRTBijectionTypeA(RC(partition_list=[[1],[1],[1],[1]]))
sage: bijection.next_state(0)
5
sage: bijection.cur_partitions
[(/)
, (/)
, (/)
, (/)
]
Run the bijection from rigged configurations to tensor product of KR tableaux.
INPUT:
EXAMPLES:
sage: RC = RiggedConfigurations(['A', 4, 1], [[2, 1]])
sage: x = RC(partition_list=[[1],[1],[1],[1]])
sage: from sage.combinat.rigged_configurations.bij_type_A import RCToKRTBijectionTypeA
sage: RCToKRTBijectionTypeA(x).run()
[[2], [5]]
sage: bij = RCToKRTBijectionTypeA(x)
sage: bij.run(build_graph=True)
[[2], [5]]
sage: bij._graph
Digraph on 3 vertices