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

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

AUTHORS:

  • Travis Scrimshaw (2011-04-15): Initial version

class sage.combinat.rigged_configurations.bij_type_D.KRTToRCBijectionTypeD(tp_krt)[source]#

Bases: KRTToRCBijectionTypeA

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

This inherits from type \(A_n^{(1)}\) because we use the same methods in some places.

doubling_map()[source]#

Perform the doubling map of the rigged configuration at the current state of the bijection.

This is the map \(B(\Lambda) \hookrightarrow B(2 \Lambda)\) which doubles each of the rigged partitions and updates the vacancy numbers accordingly.

halving_map()[source]#

Perform the halving map of the rigged configuration at the current state of the bijection.

This is the inverse map to \(B(\Lambda) \hookrightarrow B(2 \Lambda)\) which halves each of the rigged partitions and updates the vacancy numbers accordingly.

next_state(val)[source]#

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

run(verbose=False)[source]#

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

INPUT:

  • tp_krt – A tensor product of KR tableaux

  • verbose – (Default: False) Display each step in the bijection

EXAMPLES:

sage: KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['D', 4, 1], [[2,1]])
sage: from sage.combinat.rigged_configurations.bij_type_D import KRTToRCBijectionTypeD
sage: KRTToRCBijectionTypeD(KRT(pathlist=[[-3,2]])).run()

-1[ ]-1

2[ ]2

-1[ ]-1

-1[ ]-1
>>> from sage.all import *
>>> KRT = crystals.TensorProductOfKirillovReshetikhinTableaux(['D', Integer(4), Integer(1)], [[Integer(2),Integer(1)]])
>>> from sage.combinat.rigged_configurations.bij_type_D import KRTToRCBijectionTypeD
>>> KRTToRCBijectionTypeD(KRT(pathlist=[[-Integer(3),Integer(2)]])).run()
<BLANKLINE>
-1[ ]-1
<BLANKLINE>
2[ ]2
<BLANKLINE>
-1[ ]-1
<BLANKLINE>
-1[ ]-1
<BLANKLINE>
class sage.combinat.rigged_configurations.bij_type_D.RCToKRTBijectionTypeD(RC_element)[source]#

Bases: RCToKRTBijectionTypeA

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

doubling_map()[source]#

Perform the doubling map of the rigged configuration at the current state of the bijection.

This is the map \(B(\Lambda) \hookrightarrow B(2 \Lambda)\) which doubles each of the rigged partitions and updates the vacancy numbers accordingly.

halving_map()[source]#

Perform the halving map of the rigged configuration at the current state of the bijection.

This is the inverse map to \(B(\Lambda) \hookrightarrow B(2 \Lambda)\) which halves each of the rigged partitions and updates the vacancy numbers accordingly.

next_state(height)[source]#

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

run(verbose=False, build_graph=False)[source]#

Run the bijection from rigged configurations to tensor product of KR tableaux for type \(D_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(['D', 4, 1], [[2, 1]])
sage: x = RC(partition_list=[[1],[1],[1],[1]])
sage: from sage.combinat.rigged_configurations.bij_type_D import RCToKRTBijectionTypeD
sage: RCToKRTBijectionTypeD(x).run()
[[2], [-3]]
sage: bij = RCToKRTBijectionTypeD(x)
sage: bij.run(build_graph=True)
[[2], [-3]]
sage: bij._graph
Digraph on 3 vertices
>>> from sage.all import *
>>> RC = RiggedConfigurations(['D', Integer(4), Integer(1)], [[Integer(2), Integer(1)]])
>>> x = RC(partition_list=[[Integer(1)],[Integer(1)],[Integer(1)],[Integer(1)]])
>>> from sage.combinat.rigged_configurations.bij_type_D import RCToKRTBijectionTypeD
>>> RCToKRTBijectionTypeD(x).run()
[[2], [-3]]
>>> bij = RCToKRTBijectionTypeD(x)
>>> bij.run(build_graph=True)
[[2], [-3]]
>>> bij._graph
Digraph on 3 vertices