Root system data for type A infinity¶
- class sage.combinat.root_system.type_A_infinity.CartanType(index_set)[source]¶
- Bases: - CartanType_standard,- CartanType_simple- The Cartan type \(A_{\infty}\). - We use - NNand- ZZto explicitly differentiate between the \(A_{+\infty}\) and \(A_{\infty}\) root systems, respectively. While- oois the same as- +Infinityin Sage, it is used as an alias for- ZZ.- ascii_art(label=None, node=None)[source]¶
- Return an ascii art representation of the extended Dynkin diagram. - EXAMPLES: - sage: print(CartanType(['A', ZZ]).ascii_art()) ..---O---O---O---O---O---O---O---.. -3 -2 -1 0 1 2 3 sage: print(CartanType(['A', NN]).ascii_art()) O---O---O---O---O---O---O---.. 0 1 2 3 4 5 6 - >>> from sage.all import * >>> print(CartanType(['A', ZZ]).ascii_art()) ..---O---O---O---O---O---O---O---.. -3 -2 -1 0 1 2 3 >>> print(CartanType(['A', NN]).ascii_art()) O---O---O---O---O---O---O---.. 0 1 2 3 4 5 6 
 - dual()[source]¶
- Simply laced Cartan types are self-dual, so return - self.- EXAMPLES: - sage: CartanType(["A", NN]).dual() ['A', NN] sage: CartanType(["A", ZZ]).dual() ['A', ZZ] - >>> from sage.all import * >>> CartanType(["A", NN]).dual() ['A', NN] >>> CartanType(["A", ZZ]).dual() ['A', ZZ] 
 - index_set()[source]¶
- Return the index set for the Cartan type - self.- The index set for all standard finite Cartan types is of the form \(\{1, \ldots, n\}\). (See - type_Ifor a slight abuse of this).- EXAMPLES: - sage: CartanType(['A', NN]).index_set() Non negative integer semiring sage: CartanType(['A', ZZ]).index_set() Integer Ring - >>> from sage.all import * >>> CartanType(['A', NN]).index_set() Non negative integer semiring >>> CartanType(['A', ZZ]).index_set() Integer Ring 
 - is_affine()[source]¶
- Return - Falsebecause- selfis not (untwisted) affine.- EXAMPLES: - sage: CartanType(['A', NN]).is_affine() False sage: CartanType(['A', ZZ]).is_affine() False - >>> from sage.all import * >>> CartanType(['A', NN]).is_affine() False >>> CartanType(['A', ZZ]).is_affine() False 
 - is_crystallographic()[source]¶
- Return - Falsebecause- selfis not crystallographic.- EXAMPLES: - sage: CartanType(['A', NN]).is_crystallographic() True sage: CartanType(['A', ZZ]).is_crystallographic() True - >>> from sage.all import * >>> CartanType(['A', NN]).is_crystallographic() True >>> CartanType(['A', ZZ]).is_crystallographic() True 
 - is_finite()[source]¶
- Return - Truebecause- selfis not finite.- EXAMPLES: - sage: CartanType(['A', NN]).is_finite() False sage: CartanType(['A', ZZ]).is_finite() False - >>> from sage.all import * >>> CartanType(['A', NN]).is_finite() False >>> CartanType(['A', ZZ]).is_finite() False 
 - is_simply_laced()[source]¶
- Return - Truebecause- selfis simply laced.- EXAMPLES: - sage: CartanType(['A', NN]).is_simply_laced() True sage: CartanType(['A', ZZ]).is_simply_laced() True - >>> from sage.all import * >>> CartanType(['A', NN]).is_simply_laced() True >>> CartanType(['A', ZZ]).is_simply_laced() True 
 - is_untwisted_affine()[source]¶
- Return - Falsebecause- selfis not (untwisted) affine.- EXAMPLES: - sage: CartanType(['A', NN]).is_untwisted_affine() False sage: CartanType(['A', ZZ]).is_untwisted_affine() False - >>> from sage.all import * >>> CartanType(['A', NN]).is_untwisted_affine() False >>> CartanType(['A', ZZ]).is_untwisted_affine() False 
 - rank()[source]¶
- Return the rank of - selfwhich for type \(X_n\) is \(n\).- EXAMPLES: - sage: CartanType(['A', NN]).rank() +Infinity sage: CartanType(['A', ZZ]).rank() +Infinity - >>> from sage.all import * >>> CartanType(['A', NN]).rank() +Infinity >>> CartanType(['A', ZZ]).rank() +Infinity - As this example shows, the rank is slightly ambiguous because the root systems of type \(['A',NN]\) and type \(['A',ZZ]\) have the same rank. Instead, it is better ot use - index_set()to differentiate between these two root systems.