def __init__(self, g, parent): """ EXAMPLES:: sage: G = WeylGroup(['A',2]) sage: s1 = G.simple_reflection(1) sage: TestSuite(s1).run() """ MatrixGroupElement.__init__(self, g, parent) self.__matrix = self._MatrixGroupElement__mat self.__matrix.set_immutable() self._parent = parent
def _latex_(self): """ EXAMPLES:: sage: W = WeylGroup(['A',2,1], prefix="s") sage: [s0,s1,s2]=W.simple_reflections() sage: latex(s0*s1) # indirect doctest s_{0}s_{1} sage: W = WeylGroup(['A',2,1]) sage: [s0,s1,s2]=W.simple_reflections() sage: latex(s0*s1) \left(\begin{array}{rrr} 0 & -1 & 2 \\ 1 & -1 & 1 \\ 0 & 0 & 1 \end{array}\right) """ if self._parent._prefix is None: return MatrixGroupElement._latex_(self) else: redword = self.reduced_word() if len(redword) == 0: return "1" else: return "".join(["%s_{%d}" % (self._parent._prefix, i) for i in redword])
def __repr__(self): """ EXAMPLES:: sage: W = WeylGroup(['A',2,1], prefix="s") sage: [s0,s1,s2]=W.simple_reflections() sage: s0*s1 s0*s1 sage: W = WeylGroup(['A',2,1]) sage: [s0,s1,s2]=W.simple_reflections() sage: s0*s1 [ 0 -1 2] [ 1 -1 1] [ 0 0 1] """ if self._parent._prefix is None: return MatrixGroupElement.__repr__(self) else: redword = self.reduced_word() if len(redword) == 0: return "1" else: ret = "" for i in redword[:-1]: ret += "%s%d*" % (self._parent._prefix, i) return ret + "%s%d" % (self._parent._prefix, redword[-1])
def _latex_(self): """ EXAMPLES:: sage: W = WeylGroup(['A',2,1], prefix="s") sage: [s0,s1,s2]=W.simple_reflections() sage: latex(s0*s1) # indirect doctest s_{0}s_{1} sage: W = WeylGroup(['A',2,1]) sage: [s0,s1,s2]=W.simple_reflections() sage: latex(s0*s1) \left(\begin{array}{rrr} 0 & -1 & 2 \\ 1 & -1 & 1 \\ 0 & 0 & 1 \end{array}\right) """ if self._parent._prefix is None: return MatrixGroupElement._latex_(self) else: redword = self.reduced_word() if len(redword) == 0: return "1" else: return "".join(["%s_{%d}"%(self._parent._prefix, i) for i in redword])