\headers
Fast algorithm for border bases of Artinian Gorenstein algebrasB. Mourrain
Fast algorithm for border bases of Artinian Gorenstein algebras
Bernard Mourrain
UCA,
Inria Méditerranée,
aromath,
Sophia
Antipolis,
France,
[email protected]
(April 25, 2017)
Abstract
Given a multi-index sequence σ, we present a new efficient algorithm
to compute generators of the linear recurrence relations between the terms
of σ. We transform this problem into an algebraic one, by identifying
multi-index sequences, multivariate formal power series and linear
functionals on the ring of multivariate polynomials. In this setting, the
recurrence relations are the elements of the kernel Iσ of the
Hankel operator Hσ associated to σ. We describe the
correspondence between multi-index sequences with a Hankel operator of
finite rank and Artinian Gorenstein Algebras. We show how the algebraic
structure of the Artinian Gorenstein algebra Aσ
associated to the sequence σ yields the structure of the terms
σα for all α∈\mathbbmNn. This structure is
explicitly given by a border basis of Aσ, which is
presented as a quotient of the polynomial ring \mathbbmK[x1,…,xn] by the kernel Iσ of the Hankel operator Hσ. The
algorithm provides generators of Iσ constituting a border basis,
pairwise orthogonal bases of Aσ and the tables of
multiplication by the variables in these bases. It is an extension of
Berlekamp-Massey-Sakata (BMS) algorithm, with improved complexity bounds. We
present applications of the method to different problems such as the
decomposition of functions into weighted sums of exponential functions,
sparse interpolation, fast decoding of algebraic codes, computing the
vanishing ideal of points, and tensor decomposition. Some benchmarks
illustrate the practical behavior of the algorithm.
1 Introduction
Discovering hidden structures from probing or sampling is a problem which
appears in many contexts and in many applications. An interesting instance of
this general problem is recovering the structure of a sequence of values, from
the knowledge of some of its terms. It consists in guessing any term of the
sequence from the first known terms. A classical way to tackle this problem,
which goes back to Bernoulli, is to find linear recurrence relations between
the first terms of a sequence, to compute the roots of the associated
characteristic polynomial and to deduce the expression of any term of the
sequence from these roots.
In this paper, we consider the structure discovering problem for
multi-index sequences
σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNn
of values in a field \mathbbmK. Given a finite set of values
σα for α∈a⊂\mathbbmNn,
we want to guess a formula for the general terms of the sequence
σ. An important step of this approach is to compute
characteristic polynomials of the sequence
σ=(σα)α∈\mathbbmNn. They
correspond to multi-index recurrence relations with constant
coefficients between the terms of σ. The ideal of these
recurrence relation polynomials define an Artinian Gorenstein algebra.
We present a fast algorithm to compute a border basis of this ideal
from the first terms of the sequence σ. This method also yields
a basis of the Artinian Gorenstein algebra as well as its
multiplicative structure.
Related works
The approach that we present is related to Prony’s
method in the univariate case and to its variants
[33], [29],
[17], [8], … and to
the more recent extensions in the multivariate case
[1], [27],
[18], [32]. Linear algebra
tools are used to determine a basis of the quotient algebra
Aσ or to compute an H-basis for the presentation of
Aσ. An analysis of the complexity of these approaches
yields bounds in O(s~3) (or O(s~ω)), where s~ is the size of the Hankel matrices
involved in these methods, typically the number (nd′+n) of
monomials in degree at most d′<2d if the terms of the sequence
are known up to the degree d. The problem is also related to Padé
approximants, well investigated in the univariate case
[11], [3],
[35], but much less developed in the multivariate case
[28], [13].
Finding recurrence relations is a problem which is also well developed in the
univariate case. Berlekamp [5] and Massey
[20] proposed an efficient algorithm to compute
such recurrence relations, with a complexity in O(r2) where r
is the size of the minimal recurrence relation. Exploiting further the
properties of Hankel matrices, the complexity of computing recurrence
relations can be reduced in the univariate case to O~(r).
Sakata extended Berlekamp-Massey algorithm to
multi-index sequences, computing a Gröbner
basis of the polynomials in the kernel of a multi-index Hankel
matrix [31]. See also
[30] for an analysis and overview of the
algorithm. The computation of multivariate linear recurrence relations have
been further investigated, e.g. in [16] and more
recently in [7], where the coefficients of the
Gröbner basis are computed by solving multi-index Hankel systems.
Contributions
We translate the structure discovering
problem into an algebraic setting, by identifying multi-index
sequences of values, generating formal power series and linear
functionals on the ring of polynomials. Through this identification,
we associate to a multi-index sequence σ, a Hankel operator
Hσ which kernel Iσ defines an Artinian Gorenstein Algebra
Aσ when Hσ is of finite rank. We present a new efficient algorithm to
compute the algebraic structure of Aσ, using the first terms σα for
α∈a⊂\mathbbmNn. The structure
Aσ is described by a border basis of the ideal
Iσ.
This algorithm is an extension of the Berlekamp-Massey-Sakata (BMS)
algorithm. It computes border bases of the recurrence relations,
which are more general than Gröbner bases. They also offer a
better numerical stability [25] in the solving
steps required to address the decomposition problem. The algorithm,
based on a Gram-Schmidt orthogonalisation process, is simplified. The
complexity bound also improves the previously known bounds for
computing such recurrence relations. We show that the arithmetic
complexity of computing a border basis is in
O((r+δ)rs) where r is the number of roots of
Iσ (counted with multiplicities), δ is the size of
the border of the monomial basis and s is the number of known terms
of the sequence σ.
The algorithm outputs generators of the recurrence relations, a
monomial basis, an orthogonal basis and the tables of multiplication
by the variables in this basis of Aσ. The
structure of the terms of the sequence σ can be deduced from this output, by
applying classical techniques for solving polynomial systems from
tables of multiplication. We show how the algorithm can be applied to
different problems such as the decomposition of functions into
weighted sums of exponential functions, sparse interpolation, fast
decoding of algebraic codes, vanishing ideal of points, and tensor
decomposition.
Notation
Let \mathbbmK be a field, \mathbbmKˉ its
algebraic closure, \mathbbmK[x1,…,xn]=\mathbbmK[x]
be the ring of polynomials in the variables x1,…,xn with
coefficients in the field \mathbbmK, \mathbbmK[[y1, …,yn]]=\mathbbmK[y] be the ring of formal power series in the
variables y1,…,yn with coefficients in \mathbbmK. We denote by
\mathbbmK\mathbbmNn the set of sequences σ=(σα)α∈\mathbbmNn of numbers σα∈\mathbbmK, indexed by \mathbbmNn. ∀α=(α1,…,αn)∈\mathbbmNn, α!=∏i=1nαi!, xα=∏i=1nxiαi.
The monomials in \mathbbmK[x] are the elements of the form
xα for α∈\mathbbmNn. For a set B⊂\mathbbmK[x], B+=∪i=1nxiB∪B, ∂B=B+∖B. A set B of monomials of \mathbbmK[x] is
connected to 1, if 1∈B and for xβ∈B different
from 1, there exists xβ′∈B and i∈[1,n] such
that xβ=xixβ′. For F⊂\mathbbmK[x], ⟨F⟩ is the vector space of
\mathbbmK[x] spanned by F and (F) is the ideal generated
by F. For V,V′⊂\mathbbmK[x], V⋅V′ is
the set of products of an element of V by an element of V′.
2 Polynomial-Exponential series
In this section, we recall the correspondence between sequences σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNn
associated to polynomial-exponential series and Artinian Gorenstein
Algebras.
2.1 Duality
A sequence σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNn is naturally associated to a linear form operating
on polynomials, that is, an element of Hom\mathbbmK(\mathbbmK[x],\mathbbmK)=\mathbbmK[x]∗, as follows:
[TABLE]
This correspondence is bijective since a linear form σ∈\mathbbmK[x]∗ is
uniquely defined by the sequence σα=⟨σ∣xα⟩ for α∈\mathbbmNn. The
coefficients σα=⟨σ∣xα⟩ for α∈\mathbbmNn are also called
the moments of σ. Hereafter, we will identify
\mathbbmK\mathbbmNn with \mathbbmK[x]∗=Hom\mathbbmK(\mathbbmK[x],\mathbbmK).
The dual space \mathbbmK[x]∗ has a natural structure of \mathbbmK[x]-module, defined as
follows: ∀σ∈\mathbbmK[x]∗,∀p,q∈\mathbbmK[x],
[TABLE]
We check that ∀σ∈\mathbbmK[x]∗,∀p,q∈\mathbbmK[x], (pq)⋆σ=p⋆(q⋆σ).
See e.g. [15], [21] for
more details.
For any σ∈\mathbbmK[x]∗, the inner product associated to σ on
\mathbbmK[x] is defined as follows:
[TABLE]
Sequences in \mathbbmK\mathbbmNn are also in correspondence with
series in \mathbbmK[[z]], via the so-called
z-transform:
[TABLE]
If \mathbbmK is a field of characteristic [math], we can identify the
sequence σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNnwith the series σ(y)=∑α∈\mathbbmNnσαα!yα∈\mathbbmK[[y]].
Using this identification, we have ∀p∈\mathbbmK[x],∀σ∈\mathbbmK[[y]], p⋆σ(y)=p(∂y1,…,∂yn)(σ(y)).
Through these identifications, the dual basis of the monomial basis
(xα)α∈\mathbbmNn is
(zα)α∈\mathbbmNn in \mathbbmK[[z]] and (α!yα)α∈\mathbbmNn in \mathbbmK[[y]].
Among the elements of Hom(\mathbbmK[x],\mathbbmK), we have the evaluation eξ:p(x)∈\mathbbmK[x]↦p(ξ)∈\mathbbmK at a point ξ∈\mathbbmKn, which corresponds to the
sequence (ξα)α∈\mathbbmNn or to the series
eξ(z)=∑α∈\mathbbmNnξαzα=∏i=1n(1−ξizi)1∈\mathbbmK[[z]], or to the series eξ(y)=∑α∈\mathbbmNnξαα!yα=eξ1y1+⋯+ξnyn=e⟨ξ,y⟩ in \mathbbmK[[y]]. These series belong to the more general family
POLYEXP of polynomial-exponential series σ=∑i=1rωieξi∈\mathbbmK[[y]] with ξi∈\mathbbmKn,ωi∈\mathbbmK[y]. This set corresponds in
\mathbbmK[[z]] to the set of series of the form
[TABLE]
with ξi∈\mathbbmKn,ωi,α∈\mathbbmK,α∈Ai⊂\mathbbmNn and Ai finite.
Definition 2.1
For a subset D⊂\mathbbmK[[y]], the inverse
system generated by D is the vector space spanned by the elements
p⋆δ for δ∈D, p∈\mathbbmK[x], that is, by the
elements in D and all their derivatives.
*For ω∈\mathbbmK[y], we denote by μ(ω) the dimension of the inverse system of ω, generated by ω and
all its derivatives. For σ=∑i=1rωieξi∈POLYEXP(y), μ(σ)=∑i=1rμ(ωi).
*
2.2 Hankel operators
The external product ⋆ allows us to define a
Hankel operator as a multiplication operator by a dual element ∈\mathbbmK[x]∗:
Definition 2.2
The Hankel operator associated to an element σ∈\mathbbmK[x]∗=\mathbbmK\mathbbmNn is
[TABLE]
*Its kernel is denoted Iσ. We say that the series σ has
finite rank r∈\mathbbmN if rankHσ=r<∞.
*
As ∀p,q∈\mathbbmK[x], pq⋆σ=p⋆(q⋆σ), we easily check that Iσ=kerHσ
is an ideal of \mathbbmK[x] and that
Aσ=\mathbbmK[x]/Iσ is an
algebra.
Given a sequence σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNn, the kernel of Hσ is the set of
polynomials p=∑β∈Bpβxβ such that
∑β∈Bpβσα+β=0 for all α∈\mathbbmNn. This kernel is the set of linear recurrence relations
of the sequence σ=(σα)α∈\mathbbmNn.
Remark 2.3
The matrix of the operator Hσ in the bases
(xα)α∈\mathbbmNn and its dual basis
(zα)α∈\mathbbmNn is
[TABLE]
The coefficients of [Hσ] depend only the sum of the multi-indices
indexing the rows and columns, which explains why it is called a
Hankel operator.
In the reconstruction problem, we are dealing with truncated
series with known coefficients σα for α in
a subset a of \mathbbmNn. This leads to the definition of
truncated Hankel operators.
Definition 2.4
For two vector spaces V,V′⊂\mathbbmK[x] and σ∈⟨V⋅V′⟩∗⊂\mathbbmK[x]∗, the truncated Hankel operator on (V,V′),
denoted by HσV,V′, is the following map:
[TABLE]
If B={b1,…,br} (resp. B′={b1′,…,br′}) is a basis of V (resp. V′), then the matrix of the
operator HσV,V′ in B and the dual basis of B′ is
[TABLE]
If B and B′ are monomial sets, we obtain the so-called truncated
moment matrix of σ:
[TABLE]
(identifying a monomial xβ with its exponent β).
These structured matrices share with the classical univariate Hankel matrices
many interesting properties (see e.g. in [23]).
2.3 Artinian Gorenstein algebra
A \mathbbmK-algebra A is Artinian if
dim\mathbbmK(A)<∞. It can be represented as the
quotient A=\mathbbmK[x]/I of a polynomial ring
\mathbbmK[x] by a (zero-dimension) ideal I⊂\mathbbmK[x].
A classical result states that the quotient algebra A=\mathbbmK[x]/I is finite dimensional, i.e. Artinian, iff
V\mathbbmKˉ(I) is finite, that is, I defines a finite
number of (isolated) points in \mathbbmKˉn (see e.g.
[12][Theorem 6] or
[14][Theorem 4.3]).
The dual A∗=Hom\mathbbmK(A,\mathbbmK) of A=\mathbbmK[x]/I is naturally
identified with the sub-space
[TABLE]
A Gorenstein algebra is defined as follows:
Definition 2.5
*A \mathbbmK-algebra A is Gorenstein if ∃σ∈A∗=Hom\mathbbmK(A,\mathbbmK)
such that ∀ρ∈A∗,∃a∈A with ρ=a⋆σ and a⋆σ=0 implies
a=0.
*
In other words, A=\mathbbmK[x]/I is Gorenstein iff
A∗={p⋆σ∣p∈\mathbbmK[x]}=imHσ and p⋆σ=0 implies p∈I.
Equivalently, A=\mathbbmK[x]/I is Gorenstein iff
there exists σ∈\mathbbmK[x]∗ such that we have
the exact sequence:
[TABLE]
so that Hσ induces an isomorphism between A=\mathbbmK[x]/I and A∗.
In other words, a Gorenstein algebra A is the quotient of a polynomial
ring by the kernel of a Hankel operator, or equivalently by an ideal of recurrence relations of a
multi-index sequence.
An Artinian Gorenstein can thus be described by an element σ∈\mathbbmK[x]∗, such that
rankHσ=dimA∗=dimA is
finite. In the following, we will assume that the Artinian Gorenstein algebra is
given by such an element σ∈\mathbbmK[x]∗≡\mathbbmK\mathbbmNn. The corresponding algebra will be
Aσ=\mathbbmK[x]/Iσ where
Iσ=kerHσ.
By a multivariate generalization of Kronecker’s theorem
[22][Theorem 3.1], the sequences
σ such that rankHσ=r<∞ are the
polynomial-exponential series σ∈POLYEXP with
μ(σ)=r.
The aim of the method we are presenting, is to compute the structure of the
Artinian Gorenstein algebra Aσ from the first terms of the
sequence σ=(σα)α∈\mathbbmNn. We are going
to determine bases of Aσ and generators of the ideal
Iσ, from which we can deduce directly the multiplicative structure
of Aσ.
The following lemma gives a simple way to test the linear independency in
Aσ using truncated Hankel matrices (see
[22][Lemma 3.3]):
Lemma 2.6
*Let σ∈\mathbbmK[x]∗, B={b1,…,br}, B′={b1′,…, br′}⊂\mathbbmK[x]. If the matrix HσB,B′=(⟨σ∣bibj′⟩)∈B,β′∈B′ is invertible, then B (resp. B′) is linearly independent in
Aσ.
*
This lemma implies that if dimAσ=r<+∞, ∣B∣=∣B′∣=r=dimAσ and HσB,B′ is
invertible, then (xβ)β∈B and
(xβ′)β′∈B′ are bases of Aσ.
Given a Hankel operator Hσ of finite rank r, it is clear that
the truncated operators will have at most rank r. We are going to use the
so-called flat extension property, which gives conditions under which
a truncated Hankel operator of rank r can be extended to a Hankel operator
of the same rank (see [19] and extensions
[10], [6],
[22]).
Theorem 2.7
*Let V,V′⊂\mathbbmK[x] be vector
spaces connected to 1, such that x1,…,xn∈V and
let σ∈⟨V⋅V′⟩∗. Let B⊂V, B′⊂V′ such that B+⊂V,B′+⊂V′. If
rankHσV,V′=rankHσB,B′=r, then
there is a unique extension σ~∈\mathbbmK[[y]] such that σ~ coincides with σ on
⟨V⋅V′⟩ and rankHσ~=r. In
this case, σ~∈POLYEXP with r=μ(σ) and Iσ~=(kerHσB+,B′).
*
2.4 Border bases
We recall briefly the definition of border basis and the main properties, that
we will need. Let B be a monomial set of \mathbbmK[x].
Definition 2.8
*A rewriting family F for a (monomial) set B is a set of polynomials F={fi}i∈i⊂\mathbbmK[x] such that
fi=xαi+bi with bi∈⟨B⟩,
αi∈∂B, αi=αj if i=j. The
rewriting family f is complete if (xαi)i∈i=∂B.
*
The monomial xαi is called the leading
monomial of fi and denoted γ(fi).
Definition 2.9
*A family F⊂\mathbbmK[x] is a border basis with
respect to B if it is a complete rewriting family for B such that
\mathbbmK[x]=⟨B⟩⊕(F).
*
This means that any element of \mathbbmK[x] can be projected
along the ideal I=(F) onto a unique element of ⟨B⟩. In other
words, B is a basis of the quotient algebra A=\mathbbmK[x]/I.
Let B[0]=B and for k∈\mathbbmN, B[k+1]=(B[k])+. If
1∈B, then for any p∈\mathbbmK[x], there exist k∈\mathbbmN, such that p∈⟨B[k]⟩.
For a complete rewriting family F with respect to a monomial set B
containing 1, a projection πF of \mathbbmK[x] on
⟨B⟩ can be defined recursively on the set of monomials m of
\mathbbmK[x] by
if m∈B, πF(m)=m;
if m∈∂B, πF(m)=m−f where f is the (unique)
polynomial in F for which γ(f)=m,
if m∈B[k+1]−B[k] for k>1, there exists m′∈B[k] and i0∈[1,n] such that m=xi0m′. Let πF(m)=πF(xi0πF(m′)).
This map defines a projector from \mathbbmK[x] onto ⟨B⟩. The kernel of πF is contained in the ideal (F). The family
F is a border basis iff ker(πF)=(F).
Checking that a complete rewriting family is a border basis reduces to
checking commutation properties. This leads to efficient algorithms to compute
a border basis. For more details, see [24],
[25], [26].
A special case of border basis is when the leading term γ(f) of f∈F is the maximal monomial of f for a monomial ordering ≻. Then
F is a Gröbner basis of I for this monomial ordering ≻.
A border basis F with respect to a monomial set B gives directly the
tables of multiplication Mi by the variables xi in the basis B. For a
monomial b∈B, Mi(b)=πF(xib)=xib−f withf∈F such
that γ(f)=xib if xib∈∂B and f=0 otherwise.
3 Border bases of series
Given the first terms σα for α∈a of the
sequence σ=(σα)α∈\mathbbmNn∈\mathbbmK\mathbbmNn, where a⊂\mathbbmNn is a
finite set of exponents, we are going to compute a basis of
Aσ and generators of Iσ. We assume that the
monomial set xa={xα,α∈a} is connected to 1.
3.1 Orthogonal bases of Aσ
An important step in the decomposition method consists in computing a basis
B of Aσ. In this section, we describe how to compute a
monomial basis B={xβ} and two other bases
p=(pβ) and q=(qβ), which are
pairwise orthogonal for the inner product ⟨⋅,⋅⟩σ:
[TABLE]
To compute these pairwise orthogonal bases, we will use a projection process,
similar to Gram-Schmidt orthogonalization process. The main difference is that
we compute pairs pβ,qβ of orthogonal polynomials. As
the inner product ⟨⋅,⋅⟩σ may be
isotropic, the two polynomials pβ,qβ may not be
equal, up to a scalar. For a polynomial f and two families of polynomials
p=[p1,…,pl], m=[m1,…,ml], we
will use the following procedure proj(f,p,m).
Algorithm 1 corresponds to the Modified Gram-Schmidt
algorithm, when the scalar product is definite positive. It is known
to have a better numerical behavior than the direct Gram-Schmidt
orthogonalization process [34][Lecture
8]. It computes the polynomial
proj(f,p,m) characterized by the
following lemma.
Lemma 3.1
*If ⟨pi,mj⟩σ=0 if j<i and
⟨pi,mi⟩σ=1,
there is a unique polynomial g such that g=f−∑i=1lλipi with λi∈\mathbbmK and ⟨g,mi⟩σ=0 for i=1,…,l.
*
Proof 3.2
We prove by induction on the index i of the loop that g is orthogonal to
[m1,…,mi]. For i=1, g=f−⟨f,m1⟩σp1 is such that ⟨g,m1⟩σ=⟨f,m1⟩σ−⟨f,m1⟩σ⟨p1,m1⟩σ =0.
*If the property is true at step k⩽l, i.e.
⟨g,mi⟩σ=0 for i<k, then g′=g−⟨g,mk⟩σpk is such that ⟨g,mi⟩σ−⟨g,mk⟩σ⟨pk,mi⟩σ=⟨g,mi⟩σ=0 by induction hypothesis. By construction,
⟨g′,mk⟩=⟨g,mk⟩σ−⟨g,mk⟩σ⟨pk,mk⟩σ=0 and the induction
hypothesis is true for k. As the matrix (⟨pij,mi⟩σ)1⩽i,j⩽l is invertible, there exists a
unique polynomial of the form g=f−∑j=1lλjpj, such
that ⟨g,mi⟩σ=0 for i=1,…,l, which
concludes the proof of the lemma.
*
Algorithm 2 for computing a border basis of Aσ
proceeds inductively, starting from p=[],m=[],b=[], extending the basis p with a new polynomial
pα, orthogonal to the vector space spanned by
m for the inner product ⟨⋅,⋅⟩σ, extending m with a new monomial mα,
such that ⟨pα,mα⟩σ=1 and ⟨pβ,mα⟩=0 for β∈b and extending
b with α.
The main difference with Algorithm 4.1 in
[22] is the projection
procedure and the list of monomials s, t
used to generate new monomials and to perform the projections. The
lists
b,d,c,s,t
are lists of exponents, identified with monomials.
We verify that at each loop of the algorithm, the lists
b, d and s
are disjoint and
b∪d∪s=a.
We also verify that mα are monomials up
to a scalar, that the set of their exponents is c, that
c and t are disjoint and that c∪t=a.
The algorithm uses the function next(b,d,c,s), which computes the set of monomials n in ∂b∩s, which are not in d and such n⋅c⊂a=b∪d∪s.
We denote by ≺ the order induced by the treatment of the monomials of
a in the loops of the algorithm, so that the monomials treated at
the lth loop are smaller than the monomials in n at
the (l+1)th loop. For α∈a, we denote by
b≺α the list of monomial exponents β∈b with β≺α and by B≺α the vector
space spanned by these monomials. For α∈b, let
b≼α=b≺α∪[α].
The following properties are also satisfied during this algorithm:
Lemma 3.3
*For α∈b, we have ∀β∈b≺α, ⟨pα,mβ⟩σ=0 and ⟨pα,mα⟩σ=1. For α∈d, ⟨pα,xγ⟩σ=0 for all γ∈a such that xγpα∈⟨xa⟩.
*
Proof 3.4
By construction,
[TABLE]
is orthogonal to mβ for β∈b≺α. We
consider two exclusive cases: α∈b and α∈d.
If α∈b, then there exists
xγ∈s such that ⟨pα,xγ⟩σ=0. Thus mα=⟨pα,xγ⟩σ1xγ is such that ⟨pα,mα⟩σ=1. By construction, ⟨pα,mβ⟩σ=0 for β∈b≺α.
If α∈d, then there is no
xγ∈s such that ⟨pα,xγ⟩σ=0 and xγpα∈⟨xa⟩. Thus
pα is orthogonal to xγ for all γ∈s with xγpα∈⟨xa⟩. By construction, pα is
orthogonal to mβ for β∈b. As b∪s=a, ⟨pα,xγ⟩σ=0 for all γ∈a such that xγpα∈⟨xa⟩.
*This concludes the proof of this lemma.
*
Lemma 3.5
*For α∈b, ⟨mβ⟩β∈b≼α=⟨qβ⟩β∈b≼α and the bases
p=[pβ]β∈b≼α,q=[qβ]β∈b≼α
are pairwise orthogonal.
*
Proof 3.6
We prove it by induction on α. If α=0 is not in
b, then σα=0 for all α∈a, p and q are empty and the property
is satisfied. If α=0 is in b, then
pα=1 and qα=mα is such that ⟨pα,mα⟩σ=1. The property is true for
α=0.
Suppose that it is true for all β∈b≺α. By
construction, the polynomial qα=proj(mα,[qβ]β∈b≺α, [pβ]β∈b≺α) is orthogonal to pβ for β≺α. By induction hypothesis, [pβ]β∈b≺α,q=[qβ]β∈b≺α are pairwise orthogonal, thus
[TABLE]
By the induction hypothesis, we deduce that
[TABLE]
By Lemma 3.3, pα is orthogonal to mβ for
β∈b≺α and thus to qβ for β∈b≺α. We deduce that
[TABLE]
*This shows that [pβ]β∈b≼α
and q=[qβ]β∈b≼α are pairwise orthogonal and concludes the proof by induction.
*
Lemma 3.7
*At the lth loop of the algorithm, the
polynomials pα for α∈n are of the form
pα=xα+bα with
bα∈B≺α.
*
Proof 3.8
We prove by induction on the loop index l that we have pα=xα+bα with bα∈B≺α.
The property is clearly true for l=0, α=0 and
pα=1=x0. Suppose that it is true for
any l′<l and consider the lth loop of the algorithm. The
polynomial pα is constructed by projection of
xα on ⟨pα⟩β∈b orthogonally to ⟨mβ⟩β∈b where b=b≺α. By
induction hypothesis, pβ=xβ+bβ with
bβ∈B≺β⊂B≺α. Then by Lemma
3.1, we have
[TABLE]
*with λβ∈\mathbbmK, bα∈B≺α.
Thus, the induction hypothesis is true for l, which concludes
the proof.
*
3.2 Quotient algebra structure
We show now that the algorithm outputs a border basis of an Artinian
Gorenstein algebra Aσ~ for an extension
σ~ of σ, when all the border relations are
computed, that is, when d=∂b.
Theorem 3.9
Let b=[β1,…,βr],
c=[γ1,…,γr], p=[pβ1,…,pβr], q=[qβ1,…,qβr]
and k=[pα1,…,pαs] be the output of
Algorithm 2. Let V=⟨xb+⟩. If d=∂b and c+⊂b′ connected to 1 such that
xb+⋅xb′=xa then σ coincides on ⟨xa⟩ with a series σ~∈\mathbbmK[[y]] such that
rankHσ~=r,
(p,q)* are pairwise orthogonal bases of
Aσ~ for the inner product ⟨⋅,⋅⟩σ~,*
The family k={pα,α∈∂b} is a border basis of the ideal Iσ~, with
respect to xb.
The matrix of multiplication by xk in the basis p
(resp. q) of Aσ~ is Mk:=(⟨σ∣xkpβjqβi⟩)1⩽i,j⩽r (resp. Mkt).
Proof 3.10
By construction, xb+ is connected to 1. Let V=⟨xb+⟩ and V′=⟨xb′⟩. As b+=b∪d, a basis of V is formed by the monomials
xb and the polynomials pα=xα+bα with bα∈⟨xb⟩ for α∈d. The
matrix of HσV,V′ in this basis of V and a basis of
V′, which first elements are mβ1,…,mβr, is of the form
[TABLE]
where Lr is a lower triangular invertible matrix of size r. The kernel
of HσV,V′ is generated by the polynomials pα for
α∈d.
By Theorem 2.7, σ coincides on V⋅V′=⟨xa⟩ with a series σ~
such that xb is a basis of
Aσˉ=\mathbbmK[x]/Iσ~ and Iσ~=(kerHσ~V,V′)=(pα)α∈d.
By Lemma 3.7, pα=xα+bα with α∈∂b and bα∈⟨xb⟩. Thus (pα)α∈∂b is a border basis with respect to
xb for the ideal Iσ~, since
xb is a basis of of Aσˉ.
This shows that rankHσ~=dimAσ~=∣b∣=r.
By Lemma 3.5, (p,q) are pairwise
orthogonal for the inner product ⟨⋅,⋅⟩σ, which coincides with ⟨⋅,⋅⟩σ~ on ⟨xa⟩.
Thus they are pairwise orthogonal bases of Aσ~
for the inner product ⟨⋅,⋅⟩σ~.
As we have xkpβj≡∑i=1r⟨xkpβj,qβi⟩σpβi, the matrix of multiplication by xk in the basis
p of Aσ~ is
[TABLE]
*Exchanging the role of
p and q, we obtain Mkt for the matrix of
multiplication by xk in the basis q.
*
Lemma 3.11
*If ≺ is a monomial ordering and if at the end of the algorithm
d=∂b and c+⊂b′ connected to 1 with xb+⋅xb′=xa, then
b=c and k is a Gröbner basis of the
ideal Iσ for the monomial ordering.
*
Proof 3.12
If ≺ is a monomial ordering, then the polynomials pα=xα+bα, α∈∂b are
constructed in such a way that their leading term is
xα. Therefore the border basis k=(pα)α∈∂b is also a Gröbner
basis.
By construction, c is the set of monomials γ∈a such that ⟨pβ,xγ⟩σ=0 for some β∈b. Suppose that
γ∈c is not in b. Then
xγ∈(xd) and there is
δ∈d and γ′∈a such that γ=δ+γ′. As pδ∈k, we have ⟨pδ,xα⟩σ=0 for α∈a such that pδxα∈⟨xa⟩. By Lemma 3.7,
pδ=xδ+bδ with
bδ∈b≺δ with xδ≻bδ.
[TABLE]
*We have ⟨pβ,pδxγ′⟩σ=⟨pδ,pβxγ′⟩σ=0 since
pδ∈k and pδpβxγ′∈⟨xa⟩. As
γ is the first monomial of a such that ⟨pβ,xγ⟩σ=0 and bδxγ′≺xδ+γ′=xγ, we have ⟨pβ,bδxγ′⟩σ, which implies that ⟨pβ,xγ⟩σ=0. This is in
contradiction with the hypothesis ⟨pβ,xγ⟩σ=0, therefore γ∈b. We deduce
that c⊂b and the equality holds
since the two sets have the same cardinality.
*
Notice that to construct a minimal reduced Gröbner basis of
Iσ~ for the monomial ordering ≺, it suffices to
keep the elements pα∈k with α minimal
for the component-wise partial ordering.
3.3 Complexity
Let s=∣a∣ and r=∣b∣, δ=∣∂b∣. As b⊂a and the monomials in
∂b are the product of a monomial in b by one
of the variables x1,…,xn, we have r⩽s and δ⩽nr.
Proposition 3.13
*The complexity of the algorithm to compute the bases
p and q is O((r+δ)rs).
*
Proof 3.14
*At each step, the computation of pα (resp. qα) requires
O(r2) arithmetic operations, since the support of the
polynomials pβ, qβ (β∈b) is in
b and ∣b∣⩽r. Computing ⟨xγ,pα⟩σ for all γ∈t requires O(rs) arithmetic operations. As the
number of polynomials pα is at most ∣b+∣=r+δ, the total cost for computing p and q is
thus in O((r+δ)(r2+rs))=O((r+δ)rs).
*
As δ⩽nr, the complexity of this algorithm is in O(nr2s).
The algorithm is connected to the Berlekamp-Massey-Sakata algorithm,
which computes a Gröbner basis for a monomial ordering ≺. In the BMS
algorithm, a minimal set F of recurrence polynomials valid for the
monomials smaller that a given monomial m is computed. A monomial basis
b∗ generated by all the divisors of some corner elements is
constructed. The successor m+ of the monomial m for the monomial ordering
≺ is considered and the family F of valid recurrence
polynomials is updated by computing their discrepancy at the monomial m+
and by cancelling this discrepancy, if necessary, by combination with one
lower polynomial [30].
Let δ be the size of the border ∂b∗ of the
monomial basis b∗computed by BMS algorithm. At each update,
there are at most δ polynomials in F. Let s′ be the
maximum number of their non-zero terms. Then the update of F
requires O(δs′) arithmetic operations. The number of
updates is bounded by the number r+δ of monomials in
b+. Checking the discrepency of a polynomial in F
for all the monomials in xa requires O(s′s) arithmetic operations. Thus, the total cost of the BMS algorithm is in
O((r+δ)δs′+δs′s). As the output
polynomials in the Gröbner basis are not necessarily reduced, the maximal
number of terms s′⩽s can be of the same order than s. Thus the
complete complexity of BMS algorithm is in O(δs2)=O(nrs2), which is an order of magnitude larger than
the bound of Proposition 3.13, assuming that r≪s.
The method presented in [7] for computing
a Gröbner basis of the recurrence polynomials computes the rank of
a Hankel matrix of size the number s~ of monomials of degree
⩽d for a bound d on the degree of the recurrence
relations. It deduces a monomial basis b stable by division
and obtains the valid recurrence relations for the border monomials by
solving a linear Hankel system of size r. Thus the complexity is in
O(δrω+s~ω) where
2.3⩽ω⩽3. It is also larger than the bound
of Proposition 3.13. This bound could be improved by
exploiting the rank displacement of the structured matrices involved
in this method [9], but the known bounds on the
displacement rank of the matrices involved in the computation do not
improve the bound of Proposition 3.13.
4 Examples
4.1 Multivariate Prony method
Given a function h(u1,…,un)=∑i=1rωieζi,1u1+⋯+ζi,nun, the problem is to compute its
decomposition as a weighted sum of exponentials, from values of h. The
method proposed by G. Riche de Prony for sums of univariate exponential
functions consists in sampling the function at regularly spaced values
[2]. In the multivariate extension of this
method, the function is sampled on a grid in \mathbbmRn, for
instance \mathbbmNn. The decomposition is computed from a subset of the
multi-index sequence of evaluation σα=h(α1,…,αn) for α=(α1,…,αn)∈\mathbbmNn. The
ideal Iσ associated to this sequence is the ideal defining the
points ξi=(eζi,1,…,eζi,1n). To compute
this decomposition, we apply the border basis algorithm to the sequence
σα for ∣α∣⩽d with d high enough, and
obtain a border basis of the ideal Iσ defining the points ξ1,…,ξr∈\mathbbmKn, a basis of Aσ and the
tables of multiplication in this basis. By applying the decomposition
algorithm in [22], we deduce the
points ξi=(eζi,1,…,eζi,1n). Taking the
log of their coordinates log(ξi,j)=ζi,j yields the coordinates of the frequencies ζi.
4.2 Fast decoding of algebraic-geometric codes
Let \mathbbmK be a finite field. We consider an algebraic-geometric code
C obtained by evaluation of polynomials in \mathbbmK[x1,…,xn] of degree ⩽d at points ξ1,…,ξl∈\mathbbmKn. It is a finite vector space in \mathbbmKl. We use the
words of the orthogonal code C⊥={(m1,…,ml)∣m⋅c=m1c1+⋯+mlcl=0} for the transmission of
information. Suppose that an error ω=(ω1,…,ωl)
occurs in the transmission of a message m=(m1,…,ml) so that the
message m∗=m+ω is received. Let ωi1,…,ωir be the non-zero coefficients of the error vector ω. To
correct the message r, we use the moments or syndromes σα=(ξ1α,…,ξlα)⋅m∗=(ξ1α,…,ξlα)⋅ω=∑j=1rwijξijα for α=(α1,…,αn)∈\mathbbmNn with ∣α∣⩽d. We compute generators of the set
of error-locator polynomials, that is, the polynomials vanishing at the points
ξi1,…,ξir and deduce the weights or errors ωij
by solving the Vandermonde system
[TABLE]
The points ξij correspond to the position of the errors and
ωij to their amplitude. By applying the border basis algorithm, we
obtain a border basis of the ideal of error-locator polynomials, from which
we deduce the position and amplitude of the errors.
4.3 Sparse interpolation
Given a sparse polynomial h(u1,…,un)=∑i=1rωiu1γi,1 ⋯ unγi,n, which is a weighted sum of
r monomials with non-zero weights ωi∈\mathbbmK, the problem is
to compute the exponents (γi,1,…,γi,n)∈\mathbbmNn of the monomials and the weights ωi, from evaluations
of the blackbox functions h. The approach, proposed initially in
[4], [36],
consists in evaluating the function at points of the form (ζ1k,…,ζnk) for some values of ζ1,…ζn∈\mathbbmK and
to apply univariate Prony-type methods or Berlekamp-Massey algorithms to the
sequence σk=h(ζ1k,…,ζnk), for k∈\mathbbmN. The approach can be extended to multi-index sequences
(σα)α∈\mathbbmNn by computing the terms
[TABLE]
for α=(α1,…,αn)∈\mathbbmNn. It can also
be extended to sequences constructed from polylog functions
[22]. By applying the border basis
algorithm to the multi-index sequence σα=h(ζ1α1,…,ζnαn) for ∣α∣⩽d
with d∈\mathbbmN high enough, we obtain generators of the ideal
Iσ defining the points ξi=(ζ1γi,1,…,ζnγi,n) and deduce the weights ωi, i=1,…,r. By computing the log of the coordinates of the points
ξi, we deduce the exponent vectors γi=(γi,1,…,γi,n)∈\mathbbmNn for i=1,…,r.
4.4 Tensor decomposition
Given a homogeneous polynomial
[TABLE]
of degree d∈\mathbbmN with tα∈\mathbbmK,
(αd)=α0!⋯αn!d!, we want to a
decomposition of t as sum of powers of linear forms:
[TABLE]
with a minimal r, ωi=0 and (ξi,0,…,ξi,n)=0. By a change of variables, we can assume that ξi,0=0 in
such a decomposition, and by dividing each linear form by ξi,0 and
multiplying ωi by ξi,0d, we can even assume that ξi,0=1. Then by expansion of the powers of the linear forms and by
identification of the coefficients, we obtain
[TABLE]
for α=(α1,…,αn)∈\mathbbmNn with ∣α∣⩽d. We apply the border basis algorithm to this sequence, in order
to obtain generators of the ideal Iσ defining the points ξ1,…,ξr∈\mathbbmKn and providing the weights ωi. If the
number of terms r is small enough compared to the number of terms
σα, then the set of border relations are complete and it is
possible to compute the decomposition (2).
4.5 Vanishing ideal of points
Given a set of points Ξ={ξ1,…,ξr}⊂\mathbbmKn, we want to compute polynomials defining these points, that is,
a set of generators of the ideal of polynomials vanishing on Ξ. For that
purpose, we choose non-zero weights wi∈\mathbbmK, a degree d∈\mathbbmN and we compute the sequence of moments
σα=∑i=1rωiξα for ∣α∣⩽d. The generating series σ associated to these moments
define an Artinian Gorenstein algebra Aσ=\mathbbmK[x]/Iσ, where Iσ is the ideal of polynomials
vanishing Ξ [22]. This ideal
Iσ defines the points ξi with multiplicity 1. The
idempotents {ui}i=1…r associated to the points
Ξ form a family of interpolation polynomials at these points:
ui(ξj)=0 if i=j and ui(ξi)=1.
They are the common eigenvectors of the multiplication operators in
Aσ. By applying the border basis algorithm to the sequence
σα for ∣α∣⩽d with d high enough, we obtain
generators of the ideal Iσ defining the points ξ1,…,ξr∈\mathbbmKn, a basis of Aσ and the tables of
multiplication in this basis. By computing the eigenvectors of a generic
combination of the multiplication tables by a variable, we obtain a family of
interpolation polynomials at the roots Ξ.
4.6 Benchmarks
We present some experimentations of an implementation of Algorithm
2111available at https://gitlab.inria.fr/mourrain/PolyExp in
the programming language Julia222https://julialang.org/. The arithmetic
operations are done in the finite field \mathbbmZ/32003\mathbbmZ. We
choose r random points ξi with n coordinates in \mathbbmZ/32003\mathbbmZ, take the sequence of moments σα=∑i=1rξiα up for ∣α∣⩽d with weights equal to
1. Figure 4.6 shows the timing (in sec.) to compute the border basis, checking
the validity of the recurrence relations up to degree d. The computation is
done on a MacOS El Capitan, 2.8 GHz Intel Core i7, 16 Go.
Fig. 4.6: Vanishing ideal of random points.
The timing is approximately linear in the number r of points, with a slope
increasing quadratically in n.
Examples
Example .1
We consider the sequence σ∈\mathbbmK\mathbbmN such that
σd1=1 and σi=0 for 0⩽i=d1⩽d
and d1<d.
In the first step of the algorithm, we take p0=1 and compute the first
γ∈[0,…,d] such that ⟨xγ,p1⟩σ is not zero. This yields
m0=xd1 and b=[0], c=[d1].
In a second step, we have p1=x−⟨x,m1⟩σp0=x.
The first γ∈[0,…,d]∖{d1} such that ⟨xi,p1⟩σ is not zero
yields b=[0,1], c=[d1,d1−1], m1=xd1−1.
We repeat this computation until b=[0,…,d1],
c=[d1,d1−1,…,1] with mi=xd1−i, pi=xi for i=0,…,d1.
In the following step, we have pd1+1=proj(xd1+1,p,m)=xd1+1−⟨xd1+1,m1⟩σp1−⋯−⟨xd1+1,md1⟩σpd1=xd1+1 such that ⟨xd1+1,xj⟩σ=0 for 0⩽j⩽d. The algorithm stops and
outputs b=[1,…,xd1], c=[xd1,xd1−1,…,1], k=[xd1+1].
Example .2
We consider the function h(u_{1},u_{2})={\color[rgb]{0,1,0}{\color[rgb]{0,1,0}2+3}\hskip 2.5pt}\cdot{\color[rgb]{0,0,1}2^{u_{1}}2^{u_{2}}{\color[rgb]{0,1,0}{\color[rgb]{0,1,0}-}}3^{u_{1}}}. Its associated generating series is σ=∑α∈\mathbbmN2h(α)zα=4+5z1+7z2+5z12+11z1z2+13z22+⋯.
At the first step, we have xb=[1], p=[1],
q=[41]. At the second step, we compute
xb=[1,x1,x2], p=[1,x1−45,x2−59x1−4]=[p1,px1,px2] and q=[41p1,−54px1,245px2]. At the
next step, we obtain k=[],d=[x12,x1x2,x22].
[TABLE]
The matrix of multiplication by x1 in the basis p is
[TABLE]
Its eigenvalues are {\color[rgb]{0,0,1}[1,2,3]} and the
corresponding matrix of eigenvectors is
[TABLE]
that is, the polynomials U(x)=[2−21x1−21x2,−1+x2,21x1−21x2]. By computing the Hankel matrix
[TABLE]
we deduce the weights {\color[rgb]{0,1,0}{\color[rgb]{0,1,0}2,3,-1}} and the frequencies {\color[rgb]{0,0,1}(1,1),} {\color[rgb]{0,0,1}(2,2),(3,1)}, which corresponds to the decomposition σ=ey1+y2+3e2y1+2y2−e2y1+y2 associated to h(u1,u2)=2+3⋅2u1+u2−3u1.
Example .3
We consider the following symmetric tensor or homogeneous polynomial:
[TABLE]
The associated series is
[TABLE]
To decompose it into a sum of powers of linear forms, we apply the border
basis algorithm to the series σ. The algorithm projects successively
the monomials 1,x1,x2,x12,x1x2,x22,… onto the family of
polynomials p, starting with p=[1]. We obtain
xb=c=[1,x1,x2], p=[1,x1−6,x2+131x1−1332] and the border basis is
[TABLE]
giving the projection of the border monomials \boldsymbol{d}=[{\color[rgb]{1,0,0}x_{1}^{2},x_{1}x_{2},x_{2}^{2}}] on the basis xb. The decomposition of
τ is deduced from the eigenvectors of the operator of multiplication by
x1:
[TABLE]
Its eigenvalues are [{\color[rgb]{1,0,0}-1,1,2]} and the eigenvectors
correspond to the polynomials
[TABLE]
Computing ωi=⟨σ∣ui⟩ and ξi,j=⟨σ∣ui⟩⟨σ∣xjui⟩ (see [22]),
we obtain the decomposition:
[TABLE]
Example .4
We consider the algebraic code over \mathbbmK=\mathbbmZ/32003\mathbbmZ defined by
[TABLE]
where
[TABLE]
and ξi is the ith column of Ξ. Suppose that we receive the word
[TABLE]
which is the sum r=c+ω of a code word c∈C and an error vector ω∈\mathbbmK11.
We want to correct it and find the corresponding word c of the code C.
Computing the syndromes σα=∑i=111riξiα=∑i=111ωiξiα for ∣α∣≤2 and the corresponding (truncated) generating series, we get
[TABLE]
We apply the border basis algorithm to obtain error locator polynomials.
The monomials are considered in the order xa=[1,x1,x2,x3,x12,x1x2,…,x32]. Here are the different steps, where n denotes the new monomial introduced at each loop of the algorithm.
Step 1. n=1, xb=[1], xc=[x1], k=[].
Step 2. n=x1, xb=[1,x1], xc=[x1,1], k=[].
Step 3. n=x2, xb=[1,x1], xc=[x1,1], k=[x2+21x1+23].
Step 4. n=x3, xb=[1,x1], xc=[x1,1], k=[x2+21x1+23,x3−1].
The algorithm stops at this step, since the new monomial n=x12 is of degree 2 and n⋅xc⊂xa. It outputs two error locator polynomials: x2+21x1+23,x3−1.
We check that only ξ5,ξ10 are roots of the error locator polynomials. We deduce the non-zero weights ω5,ω10 by solving the system
ω5ξ5α+ω10ξ10α=σα for α∈{(0,0,0),(1,0,0)}. This yields ω5=1,ω10=−1, so that the code word is
[TABLE]