### Navigation

- index
- modules |
- next |
- previous |
- Combinatorics »
- Rigged Configurations »
- Rigged Configuration Bijections »

# Bijection classes for type \(B_n^{(1)}\).

Part of the (internal) classes which runs the bijection between rigged configurations and KR tableaux of type \(B_n^{(1)}\).

AUTHORS:

- Travis Scrimshaw (2012-12-21): Initial version

TESTS:

    sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['B', 3, 1], [[2,1]])
    sage: from sage.combinat.rigged_configurations.bij_type_B import KRTToRCBijectionTypeB
    sage: bijection = KRTToRCBijectionTypeB(KRT(pathlist=[[-1,2]]))
    sage: TestSuite(bijection).run()
    sage: RC = RiggedConfigurations(['B', 3, 1], [[2, 1]])
    sage: from sage.combinat.rigged_configurations.bij_type_B import RCToKRTBijectionTypeB
    sage: bijection = RCToKRTBijectionTypeB(RC(partition_list=[[],[],[]]))
    sage: TestSuite(bijection).run()

class `sage.combinat.rigged_configurations.bij_type_B.``KRTToRCBijectionTypeB`(tp_krt)

  Bases: `sage.combinat.rigged_configurations.bij_type_C.KRTToRCBijectionTypeC`

  Specific implementation of the bijection from KR tableaux to rigged configurations for type \(B_n^{(1)}\).

  `next_state`(val)

    Build the next state for type \(B_n^{(1)}\).

    TESTS:

        sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['B', 3, 1], [[2,1]])
        sage: from sage.combinat.rigged_configurations.bij_type_B import KRTToRCBijectionTypeB
        sage: bijection = KRTToRCBijectionTypeB(KRT(pathlist=[[-1,2]]))
        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)

  `other_outcome`(rc, pos_val, width_n)

    Do the other case \((QS)\) possibility.

    This arises from the ambiguity when we found a singular string at the max width in \(\nu^{(n)}\). We had first attempted case \((S)\), and if that resulted in an invalid rigged configuration, we now finish the bijection using case \((QS)\).

    EXAMPLES:

        sage: RC = RiggedConfigurations(['B',3,1], [[2,1],[1,2]])
        sage: rc = RC(partition_list=[[2,1], [2,1,1], [5,1]])
        sage: t = rc.to_tensor_product_of_kirillov_reshetikhin_tableaux()
        sage: t.to_rigged_configuration() == rc # indirect doctest
        True

  `run`(verbose=False)

    Run the bijection from a tensor product of KR tableaux to a rigged configuration.

    INPUT:

    - `tp_krt` – A tensor product of KR tableaux
    - `verbose` – (Default: `False`) Display each step in the bijection

    EXAMPLES:

        sage: from sage.combinat.rigged_configurations.bij_type_B import KRTToRCBijectionTypeB
        sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['B', 3, 1], [[2, 1]])
        sage: KRTToRCBijectionTypeB(KRT(pathlist=[[0,3]])).run()
        <BLANKLINE>
        0[ ]0
        <BLANKLINE>
        -1[ ]-1
        -1[ ]-1
        <BLANKLINE>
        0[]0
        <BLANKLINE>
        sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['B', 3, 1], [[3, 1]])
        sage: KRTToRCBijectionTypeB(KRT(pathlist=[[-2,3,1]])).run()
        <BLANKLINE>
        (/)
        <BLANKLINE>
        -1[ ]-1
        <BLANKLINE>
        0[]0
        <BLANKLINE>

class `sage.combinat.rigged_configurations.bij_type_B.``RCToKRTBijectionTypeB`(RC_element)

  Bases: `sage.combinat.rigged_configurations.bij_type_C.RCToKRTBijectionTypeC`

  Specific implementation of the bijection from rigged configurations to tensor products of KR tableaux for type \(B_n^{(1)}\).

  `next_state`(height)

    Build the next state for type \(B_n^{(1)}\).

    TESTS:

        sage: RC = RiggedConfigurations(['B', 3, 1], [[2, 1]])
        sage: from sage.combinat.rigged_configurations.bij_type_B import RCToKRTBijectionTypeB
        sage: bijection = RCToKRTBijectionTypeB(RC(partition_list=[[1],[1,1],[1]]))
        sage: bijection.next_state(0)
        0

  `run`(verbose=False, build_graph=False)

    Run the bijection from rigged configurations to tensor product of KR tableaux for type \(B_n^{(1)}\).

    INPUT:

    - `verbose` – (default: `False`) display each step in the bijection
    - `build_graph` – (default: `False`) build the graph of each step of the bijection

    EXAMPLES:

        sage: RC = RiggedConfigurations(['B', 3, 1], [[2, 1]])
        sage: from sage.combinat.rigged_configurations.bij_type_B import RCToKRTBijectionTypeB
        sage: RCToKRTBijectionTypeB(RC(partition_list=[[1],[1,1],[1]])).run()
        [[3], [0]]

        sage: RC = RiggedConfigurations(['B', 3, 1], [[3, 1]])
        sage: x = RC(partition_list=[[],[1],[1]])
        sage: RCToKRTBijectionTypeB(x).run()
        [[1], [3], [-2]]
        sage: bij = RCToKRTBijectionTypeB(x)
        sage: bij.run(build_graph=True)
        [[1], [3], [-2]]
        sage: bij._graph
        Digraph on 6 vertices

### Navigation

- index
- modules |
- next |
- previous |
- Combinatorics »
- Rigged Configurations »
- Rigged Configuration Bijections »