Macaulay2 » Documentation
Packages » PathSignatures » Computing Path Varieties » Polynomial paths of degree m
next | previous | forward | backward | up | index | toc

# Polynomial paths of degree m

We reproduce a computation from [1]. We briefly recall the setting for this computation. We are interested in paths $X:[0,1]\rightarrow \mathbb{R}^\mathtt{d}$ whose coordinates are polynomials of degree $\mathtt{m}$. These can be represented by a $\mathtt{d}\times \mathtt{m}$ matrix with real entries whose coordinates are determined by the expressions $$ X_i(t) = x_{i,1}t+x_{i,2}t^2+\dots+ x_{i,m}t^m$$ When we restrict to the $\mathtt{k}$-th level signature of $X$, $\sigma:= \sigma^{(\mathtt{k})}(X)$, each of its coordinates $\sigma_{i_1, \dots, i_{\mathtt{k}}}$ is a homogeneous polynomial of degree $\mathtt{k}$ in the $\mathtt{d}\cdot \mathtt{m}$ unknowns $x_{i,j}$ corresponding to the matrix representation of the path $X$. Let $\mathtt{CMon}$ be the canonical monomial path in $\mathbb{R}^{\mathtt{m}}$ introduced in CMonTensor. Then $\sigma$ can be computed through the matrixAction of $X$ on $\sigma^{(k)}(\mathtt{CMon})$. Moreover, we can view the entries of $X$ as coordinates in the projective space $\mathbb{P}^{\mathtt{d}\cdot \mathtt{m}-1}$ over some algebraically closed field $\mathbb{K}$ containing $\mathbb{R}$. Then the matrix action just described gives rise to a rational map $$ \sigma^{(\mathtt{k})}:\mathbb{P}^{\mathtt{d}\cdot \mathtt{m}-1}\rightarrow \mathbb{P}^{\mathtt{d}^{\mathtt{k}}-1}$$ determined by $X\mapsto \sigma^{(\mathtt{k})}(X)$, of degree $\mathtt{k}$. The polynomial signature variety, denoted $\mathcal{P}_{\mathtt{d},\mathtt{k},\mathtt{m}}$, is then defined to be the Zariski closure of the image of this map (informally, the closure of the space of all tensors of order $\mathtt{k}$ that arise as signatures of paths of the specified type), while its homogeneous prime ideal is called polynomial signature ideal and denoted $P_{{\mathtt{d},\mathtt{k},\mathtt{m}}}$.

We set up the procedure to compute the ideal $P_{\mathtt{d},\mathtt{k},\mathtt{m}}$.

    i1 : d = 2; k = 3; m = 2;

We create a ring $\mathtt{R}$ with $\mathtt{d}\cdot\mathtt{m}$ variables, corresponding to the entries of a path. Then we create the free algebra $\mathtt{A}$ over $\mathtt{R}$ with $\mathtt{m}$ generators, where we can compute the $\mathtt{k}$-th level signature of the canonical monomial path in $\mathbb{R}^{\mathtt{m}}$.

    i4 : R = CC[x_1..x_(d*m)]; --x_1, ..., x_(d*m) are the entries of the degree m paths in d-dimensional space, seen as matrices

    i5 : A = wordAlgebra(m, CoefficientRing => R); --Signatures in m-dimensional space, where the signature of CMon lives.

    i6 : sigmaCMon = CMonTensor(k, A); sigmaCMon // wordFormat -- The 2nd level signature of CMon

    o7 = .166667 [2, 2, 2] + .1 [2, 2, 1] + .133333 [2, 1, 2] + .0833333 [2, 1,
         ------------------------------------------------------------------------
         1] + .266667 [1, 2, 2] + .166667 [1, 2, 1] + .25 [1, 1, 2] + .166667 [1,
         ------------------------------------------------------------------------
         1, 1]

Next we create the genericMatrix with $\mathtt{d}\times \mathtt{m}$ variables.

    i8 : M = genericMatrix (R, d, m)

    o8 = | x_1 x_3 |
         | x_2 x_4 |

                 2      2
    o8 : Matrix R  <-- R

Finally we compute the matrix action on $\sigma^{(k)}(\mathtt{CMon})$ with Matrix * NCRingElement, and then compute the corresponding map on rings using tensorParametrization.

    i9 : f = M * sigmaCMon;

    i10 : sigVarietyParam = tensorParametrization(f, CoefficientRing => CC);

    o10 : RingMap R <-- CC  [b         , b         , b         , b         , b         , b         , b         , b         ]
                          53  [2, 2, 2]   [2, 1, 1]   [2, 1, 2]   [1, 2, 2]   [1, 2, 1]   [1, 1, 2]   [1, 1, 1]   [2, 2, 1]

Now that we have the map, any tool for implicitization can be used. We compute its dimension and degree with NumericalImplicitization.

    i11 : needsPackage "NumericalImplicitization";

    i12 : numericalImageDim(sigVarietyParam,ideal 0_R)

    o12 = 4

    i13 : numericalImageDegree(sigVarietyParam,ideal 0_R, Verbose => false)

    o13 = 6

This agrees with the result in Table 3 of [1], where dimension and degree of the corresponding projective variety is computed.

## References

[1] Améndola, C., Friz, P., & Sturmfels, B. (2019, January). Varieties of signature tensors. In Forum of Mathematics, Sigma (Vol. 7, p. e10). Cambridge University Press.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/PathSignatures.m2:337:0.