Macaulay2 » Documentation
Packages » PathSignatures :: matrixAction
next | previous | forward | backward | up | index | toc

matrixAction -- Diagonal matrix action on a tensor.

Description

Let $\mathtt{A} := R\langle\mathtt{e_1}, \dots, \mathtt{e_a}\rangle$ be a free associative algebra on $\mathtt{a}$ letters and $\mathtt{B}:= \mathtt{R}\langle\mathtt{f_1}, \dots, \mathtt{f_b}\rangle$ be a free associative algebra on $\mathtt{b}$ letters, both with coefficient in a ring $\mathtt{R}$. Let $\mathtt{M}$ be a $\mathtt{b}\times \mathtt{a}$ matrix with entries in $\mathtt{R}$. Then the matrix action of $\mathtt{M}$ from $\mathtt{A}$ to $\mathtt{B}$ is defined on the generators of $\mathtt{A}$ by $$ \mathtt{e_j}\mapsto \sum_{i=1}^{\mathtt{a}}\mathtt{M}_{ij}\mathtt{f_i}, \,\,\forall 0<j\leq \mathtt{a}, $$ and then extended by linearity to the whole of $\mathtt{A}$.

For example if we consider $\mathtt{A}= \mathbb{Q}\langle \mathtt{e_1},\mathtt{e_2}, \mathtt{e_3}, \mathtt{e_4}\rangle$, $\mathtt{B}= \mathbb{Q}\langle \mathtt{f_1},\mathtt{f_2}, \mathtt{f_3}\rangle$ and the matrix $$ \mathtt{M} := \begin{pmatrix} 0 & 0 & 1 & 1\\ 0 & 1 & 0 & 0\\ 1 & 0 & 0 & 1 \end{pmatrix}$$ we get the map defined by $\mathtt{e_1}\mapsto \mathtt{f_3}$, $\mathtt{e_2}\mapsto \mathtt{f_2}$, $\mathtt{e_3}\mapsto \mathtt{f_1}$, $\mathtt{e_4}\mapsto \mathtt{f_1}+\mathtt{f_3}$. The action of $\mathtt{M}$ on $\mathtt{w}:=\mathtt{e_1}\mathtt{e_2}+2\mathtt{e_4}$ is $$ \mathtt{M*w} = \mathtt{f_3 f_2}+ 2 \mathtt{f_1}+2 \mathtt{f_3} $$

To get the map from $\mathtt{A}$ to $\mathtt{B}$ use matrixAction(Matrix,NCRing,NCRing).

i1 : M = matrix {{0,0,1,1}, {0,1,0,0}, {1,0,0,1}}

o1 = | 0 0 1 1 |
     | 0 1 0 0 |
     | 1 0 0 1 |

              3       4
o1 : Matrix ZZ  <-- ZZ
i2 : A = wordAlgebra(4);
i3 : B = wordAlgebra(3);
i4 : F = matrixAction(M, A, B)

o4 = NCRingMap B <--- A

o4 : NCRingMap

To compute the action of $\mathtt{M}$ on a tensor $\mathtt{w}$ as an element of $\mathtt{B}$ use matrixAction(Matrix,NCRingElement,NCRing).

i5 : w = [1,2]_A + 2* [4]_A

o5 = 2Lt +Lt Lt
        4   1  2

o5 : A
i6 : Mw = matrixAction(M, w, B)

o6 = Lt Lt +2Lt +2Lt
       3  2    3    1

o6 : B
i7 : F(w) == Mw

o7 = true

To compute the action of $\mathtt{M}$ on a tensor $\mathtt{w}$ in a new algebra created automatically, use Matrix * NCRingElement.

i8 : M * w

o8 = Lt Lt +2Lt +2Lt
       3  2    3    1

o8 : QQ{Lt , Lt , Lt }
          1    2    3

Ways to use matrixAction:

  • matrixAction(Matrix,NCRing,NCRing)
  • matrixAction(Matrix,NCRingElement,NCRing)

For the programmer

The object matrixAction is a method function.


The source of this document is in PathSignatures/documentation.m2:918:0.