Root system data for (untwisted) type B affine

class sage.combinat.root_system.type_B_affine.CartanType(n)

Bases: sage.combinat.root_system.cartan_type.CartanType_standard_untwisted_affine

EXAMPLES:

sage: ct = CartanType(['B',4,1])
sage: ct
['B', 4, 1]
sage: ct._repr_(compact = True)
'B4~'

sage: ct.is_irreducible()
True
sage: ct.is_finite()
False
sage: ct.is_affine()
True
sage: ct.is_untwisted_affine()
True
sage: ct.is_crystallographic()
True
sage: ct.is_simply_laced()
False
sage: ct.classical()
['B', 4]
sage: ct.dual()
['B', 4, 1]^*
sage: ct.dual().is_untwisted_affine()
False
PieriFactors

The type B affine Pieri factors are realized as the order ideal (in Bruhat order) generated by the following elements:

  • cyclic rotations of the element with reduced word 234…(n-1)n(n-1)…3210, except for 123…n…320 and 023…n…321.
  • 123…(n-1)n(n-1)…321
  • 023…(n-1)n(n-1)…320

EXAMPLES:

sage: W = WeylGroup(['B',4,1])
sage: PF = W.pieri_factors()
sage: W.from_reduced_word([2,3,4,3,2,1,0]) in PF.maximal_elements()
True
sage: W.from_reduced_word([0,2,3,4,3,2,1]) in PF.maximal_elements()
False
sage: W.from_reduced_word([1,0,2,3,4,3,2]) in PF.maximal_elements()
True
sage: W.from_reduced_word([0,2,3,4,3,2,0]) in PF.maximal_elements()
True
sage: W.from_reduced_word([0,2,0]) in PF
True
ascii_art(label=<function CartanType.<lambda>>, node=None)

Return an ascii art representation of the extended Dynkin diagram.

EXAMPLES:

sage: print(CartanType(['B',3,1]).ascii_art())
    O 0
    |
    |
O---O=>=O
1   2   3

sage: print(CartanType(['B',5,1]).ascii_art(label = lambda x: x+2))
    O 2
    |
    |
O---O---O---O=>=O
3   4   5   6   7

sage: print(CartanType(['B',2,1]).ascii_art(label = lambda x: x+2))
O=>=O=<=O
2   4   3
sage: print(CartanType(['B',1,1]).ascii_art(label = lambda x: x+2))
O<=>O
2   3
dynkin_diagram()

Return the extended Dynkin diagram for affine type \(B\).

EXAMPLES:

sage: b = CartanType(['B',3,1]).dynkin_diagram()
sage: b
    O 0
    |
    |
O---O=>=O
1   2   3
B3~
sage: sorted(b.edges())
[(0, 2, 1), (1, 2, 1), (2, 0, 1), (2, 1, 1), (2, 3, 2), (3, 2, 1)]

sage: b = CartanType(['B',2,1]).dynkin_diagram(); b
O=>=O=<=O
0   2   1
B2~
sage: sorted(b.edges())
[(0, 2, 2), (1, 2, 2), (2, 0, 1), (2, 1, 1)]

sage: b = CartanType(['B',1,1]).dynkin_diagram(); b
O<=>O
0   1
B1~
sage: sorted(b.edges())
[(0, 1, 2), (1, 0, 2)]