Root system data for type A¶
- class sage.combinat.root_system.type_A.AmbientSpace(root_system, base_ring, index_set=None)[source]¶
- Bases: - AmbientSpace- EXAMPLES: - sage: R = RootSystem(["A",3]) sage: e = R.ambient_space(); e Ambient space of the Root system of type ['A', 3] sage: TestSuite(e).run() # needs sage.graphs - >>> from sage.all import * >>> R = RootSystem(["A",Integer(3)]) >>> e = R.ambient_space(); e Ambient space of the Root system of type ['A', 3] >>> TestSuite(e).run() # needs sage.graphs - By default, this ambient space uses the barycentric projection for plotting: - sage: # needs sage.symbolic sage: L = RootSystem(["A",2]).ambient_space() sage: e = L.basis() sage: L._plot_projection(e[0]) (1/2, 989/1142) sage: L._plot_projection(e[1]) (-1, 0) sage: L._plot_projection(e[2]) (1/2, -989/1142) sage: L = RootSystem(["A",3]).ambient_space() sage: l = L.an_element(); l (2, 2, 3, 0) sage: L._plot_projection(l) (0, -1121/1189, 7/3) - >>> from sage.all import * >>> # needs sage.symbolic >>> L = RootSystem(["A",Integer(2)]).ambient_space() >>> e = L.basis() >>> L._plot_projection(e[Integer(0)]) (1/2, 989/1142) >>> L._plot_projection(e[Integer(1)]) (-1, 0) >>> L._plot_projection(e[Integer(2)]) (1/2, -989/1142) >>> L = RootSystem(["A",Integer(3)]).ambient_space() >>> l = L.an_element(); l (2, 2, 3, 0) >>> L._plot_projection(l) (0, -1121/1189, 7/3) - See also - sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods._plot_projection()
 - det(k=1)[source]¶
- Return the vector (1, … ,1) which in the [‘A’,r] weight lattice, interpreted as a weight of GL(r+1,CC) is the determinant. If the optional parameter k is given, returns (k, … ,k), the \(k\)-th power of the determinant. - EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_space() sage: e.det(1/2) (1/2, 1/2, 1/2, 1/2) - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_space() >>> e.det(Integer(1)/Integer(2)) (1/2, 1/2, 1/2, 1/2) 
 - dimension()[source]¶
- EXAMPLES: - sage: e = RootSystem(["A",3]).ambient_space() sage: e.dimension() 4 - >>> from sage.all import * >>> e = RootSystem(["A",Integer(3)]).ambient_space() >>> e.dimension() 4 
 - fundamental_weight(i)[source]¶
- EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.fundamental_weights() Finite family {1: (1, 0, 0, 0), 2: (1, 1, 0, 0), 3: (1, 1, 1, 0)} - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.fundamental_weights() Finite family {1: (1, 0, 0, 0), 2: (1, 1, 0, 0), 3: (1, 1, 1, 0)} 
 - highest_root()[source]¶
- EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.highest_root() (1, 0, 0, -1) - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.highest_root() (1, 0, 0, -1) 
 - negative_roots()[source]¶
- EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.negative_roots() [(-1, 1, 0, 0), (-1, 0, 1, 0), (-1, 0, 0, 1), (0, -1, 1, 0), (0, -1, 0, 1), (0, 0, -1, 1)] - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.negative_roots() [(-1, 1, 0, 0), (-1, 0, 1, 0), (-1, 0, 0, 1), (0, -1, 1, 0), (0, -1, 0, 1), (0, 0, -1, 1)] 
 - positive_roots()[source]¶
- EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.positive_roots() [(1, -1, 0, 0), (1, 0, -1, 0), (0, 1, -1, 0), (1, 0, 0, -1), (0, 1, 0, -1), (0, 0, 1, -1)] - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.positive_roots() [(1, -1, 0, 0), (1, 0, -1, 0), (0, 1, -1, 0), (1, 0, 0, -1), (0, 1, 0, -1), (0, 0, 1, -1)] 
 - root(i, j)[source]¶
- Note that indexing starts at 0. - EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.root(0,1) (1, -1, 0, 0) - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.root(Integer(0),Integer(1)) (1, -1, 0, 0) 
 - simple_root(i)[source]¶
- EXAMPLES: - sage: e = RootSystem(['A',3]).ambient_lattice() sage: e.simple_roots() Finite family {1: (1, -1, 0, 0), 2: (0, 1, -1, 0), 3: (0, 0, 1, -1)} - >>> from sage.all import * >>> e = RootSystem(['A',Integer(3)]).ambient_lattice() >>> e.simple_roots() Finite family {1: (1, -1, 0, 0), 2: (0, 1, -1, 0), 3: (0, 0, 1, -1)} 
 - classmethod smallest_base_ring(cartan_type=None)[source]¶
- Return the smallest base ring the ambient space can be defined upon. - See also - EXAMPLES: - sage: e = RootSystem(["A",3]).ambient_space() sage: e.smallest_base_ring() Integer Ring - >>> from sage.all import * >>> e = RootSystem(["A",Integer(3)]).ambient_space() >>> e.smallest_base_ring() Integer Ring 
 
- class sage.combinat.root_system.type_A.CartanType(n)[source]¶
- Bases: - CartanType_standard_finite,- CartanType_simply_laced,- CartanType_simple- Cartan Type \(A_n\). - See also - CartanType()- AmbientSpace[source]¶
- alias of - AmbientSpace
 - PieriFactors[source]¶
- alias of - PieriFactors_type_A
 - ascii_art(label=None, node=None)[source]¶
- Return an ascii art representation of the Dynkin diagram. - EXAMPLES: - sage: print(CartanType(['A',0]).ascii_art()) sage: print(CartanType(['A',1]).ascii_art()) O 1 sage: print(CartanType(['A',3]).ascii_art()) O---O---O 1 2 3 sage: print(CartanType(['A',12]).ascii_art()) O---O---O---O---O---O---O---O---O---O---O---O 1 2 3 4 5 6 7 8 9 10 11 12 sage: print(CartanType(['A',5]).ascii_art(label = lambda x: x+2)) O---O---O---O---O 3 4 5 6 7 sage: print(CartanType(['A',5]).ascii_art(label = lambda x: x-2)) O---O---O---O---O -1 0 1 2 3 - >>> from sage.all import * >>> print(CartanType(['A',Integer(0)]).ascii_art()) >>> print(CartanType(['A',Integer(1)]).ascii_art()) O 1 >>> print(CartanType(['A',Integer(3)]).ascii_art()) O---O---O 1 2 3 >>> print(CartanType(['A',Integer(12)]).ascii_art()) O---O---O---O---O---O---O---O---O---O---O---O 1 2 3 4 5 6 7 8 9 10 11 12 >>> print(CartanType(['A',Integer(5)]).ascii_art(label = lambda x: x+Integer(2))) O---O---O---O---O 3 4 5 6 7 >>> print(CartanType(['A',Integer(5)]).ascii_art(label = lambda x: x-Integer(2))) O---O---O---O---O -1 0 1 2 3 
 - coxeter_number()[source]¶
- Return the Coxeter number associated with - self.- EXAMPLES: - sage: CartanType(['A',4]).coxeter_number() 5 - >>> from sage.all import * >>> CartanType(['A',Integer(4)]).coxeter_number() 5 
 - dual_coxeter_number()[source]¶
- Return the dual Coxeter number associated with - self.- EXAMPLES: - sage: CartanType(['A',4]).dual_coxeter_number() 5 - >>> from sage.all import * >>> CartanType(['A',Integer(4)]).dual_coxeter_number() 5 
 - dynkin_diagram()[source]¶
- Return the Dynkin diagram of type A. - EXAMPLES: - sage: a = CartanType(['A',3]).dynkin_diagram(); a # needs sage.graphs O---O---O 1 2 3 A3 sage: a.edges(sort=True) # needs sage.graphs [(1, 2, 1), (2, 1, 1), (2, 3, 1), (3, 2, 1)] - >>> from sage.all import * >>> a = CartanType(['A',Integer(3)]).dynkin_diagram(); a # needs sage.graphs O---O---O 1 2 3 A3 >>> a.edges(sort=True) # needs sage.graphs [(1, 2, 1), (2, 1, 1), (2, 3, 1), (3, 2, 1)]