예제 #1
0
 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
예제 #2
0
 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
예제 #3
0
    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])
예제 #4
0
    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])
예제 #5
0
    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])
예제 #6
0
    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])