Abstract

11
Introduction
Gröbner basis is one of the most powerful tools in mathematical computations:  solving algebraic equations, simplifying algebraic relations, automatic theorem proving and so o n.  Recently, computing a Gröbner basis for polynomials with inexact coefficients has been studied by several researchers ([17, 18, 10, 19, 20, 23, 25, 27]) since in practice we have to operate with empirical data.  In Sasaki and Kako [17], this problem is classified into the first and second kinds of problem.  The first kind is computing a Gröbner basis for the ideal generated by the given polynomials with exact coefficients by numerical arithmetic (e.g. floating-point arithmetic). The second kind is for the given polynomials with inexact coefficients having a priori errors. In this case, we have to operate with a priori errors whether we compute a basis by exact arithmetic or not. In this paper, we focus on the second kind of problem. The research aspects for the second kind are mainly numerical stability and mathematical meaning, of the results. For the former aspect, several numerical analyses are given by Sasaki and Kako [18, 17] and an elaboration of the idea of a stabilized Gröbner basis computation for zero-dimensional cases is studied by Kondratyev and others [10]. For the latter aspect, Weispfenning introduced a solution by comprehensive Gröbner bases [27, 28, 26].  However, in general, a comprehensive Gröbner system has a huge number of segments and its compu- tation time is quite slow (see [14] for example).  Though Weispfenning [27] tried to decrease the time-complexity by using only a single parameter to represent the inexact parts, whose bounding error mechanism is very similar to interval arithmetic and Traverso and Zanoni [25] pointed out that an interval easily becomes too large when we compute a Gröbner basis by interval arithmetic. Moreover, Sasaki pointed out that it is very difficult to represent errors as parameters or intervals in practical situations, in personal conversations. In this paper, from the data mining point of view which is different from these known results, we introduce a new approach for the second kind of problem by combining the following known methods. ● Reduced row echelon form ([11, 4, 6, 10, 15, 24]) by which we can compute a Gröbner basis by the well-known linear algebraic ways. ● Structured low rank approximations including Structured total least squares ([13, 12, 9, 3] and citations therein) by which we can compute a rank deficient structured matrix satisfying some useful properties. After the introductory subsection below, we review some relevant results of computing a Gröbner basis by reduced row echelon form in Section 2.  Our definition for the second kind of numerical Gröbner basis and our new method to compute it are given in Sections 3 and 4, respectively. In Section 5, we give some useful remarks.
1.1
The Problem to be Solved
We show some examples of numerical difficulties to be solved in this paper.  For example, suppose that we compute a Gröbner basis w.r.t.  the graded lexicographic order for the ideal generated by the following polynomials. F fp = { 1.01x² − 2.09y² + 0.002, 4.03x²y + 3.06xy, 2.04x²y + 0.504x² + 1.504xy − 1.02y² }. (1.1) In this case, by the algorithm (appGröbner, [17]), we get the following Gröbner bases G αz,15 and G az,2 that are computed with initial precision ε Init = 10−16 and ε Init = 10−3 and approximate- zero threshold ε z = 10− 15 and ε z = 10− 2, respectively. Please note that 1) we use our imple- mentation¹ with Mathematica’s error tracking system instead of effective floating-point numbers used in the original paper, 2) we show only limited leading figures (rounded) in the all examples in this paper, and 3) the resulting Gröbner basis would be similar to the following ( though it is depending on the specified tolerance) if we use other algorithms with some approximate zero test (e.g. the present author [15]).
However, using any approximate zero test may make a difference between the ideal generated by the resulting Gröbner basis and the given ideal, and we do not have any method to confirm ¹We use the Buchberger algorithm with the Gebauer and Möller criteria and the sugar strategy. whether the resulting basis is suitable or not. This may cause a big problem. In fact, we have to choose a suitable result between G az,15 and G az,2.  Moreover, there are so many possible combinations of initial precision and approximate-zero threshold though we use only two of them in this example. On the other hand, we can use the stabilization techniques for algebraic algorithms ([19, 20, 21]) if we assume that the given polynomial set is exact up to their input precisions. Though we may be able to get some theoretical results, they just converge to G st = {1} which is just a result by ordinary exact arithmetic. Please note again that the stabilization techniques are introduced for exact inputs and not designed for inexact inputs. Moreover, we can compute a comprehensive Gröbner system for Fjp after rationalizing it and adding parameters on all the coefficients as follows.
In this case, it is very difficult to get reasonable result and we have so many segments in resulting comprehensive Gröbner system (the number of segments is 263 even for very similar but easier problem). In addition to this problem, even if we can deal with the large number of segments, we are not able to determine which segment is preferable for this input since in general we do not have any information on a priori errors (that may be continuous as well) . Therefore, roughly speaking, any known method can not extract a meaningful result from the given inexact input in both mathematical and practical aspects at once.  To solve this problem, from the data mining point of view, we go back to the starting point:  "When do we compute a Gröbner basis with inexact inputs?". The present author thinks that we compute it when it seems that there are some algebraic structures on inexact data. That is, we should find a Gröbner basis with lower entropy (unfortunately enlarged by some errors), which may be hidden by a priori errors. In this paper, we introduce an algorithm from this point of view. For example, by our algorithm, we have the following numerical Gröbner basis for F f p G = {1.0000x² − 2.06419y² + 1.32909 × 10−14, 1.00000y³ + 0.362958xy − 6.43879 × 10−15y}. A notable difference between G and G az,2 is the constant term of the first basis polynomial, and our algorithm suggests that 0.00198 in G az,2 is generated by a priori errors and should be zero or tiny.
2
Gröbner basis by RREF
Some researchers studied computing a Gröbner basis by using the reduced row echelon form (RREF for short, [11, 4]). However, this is not efficient since we have to operate with large matrices.  Using matrix operations partially like F 4 and F 5 ([6], [7], [10]) may be the best choice if we want to decrease the computation time. However, it may be useful since we can use so many results from numerical linear algebra for the situation where we must inevitably operate with a priori errors. We assume that we compute a Gröbner basis or its variants for the ideal I ⊆ C[ r ] generated by a polynomial set F = { f 1 , . . , f k } ⊂ C [ ī ] where C [ ī ] is the polynomial ring in variables x = x 1, . . , x ℓ over the complex number field C. We note that we use the following definition though there are several equivalents (see [1] or other text books). Definition 1 (Gröbner Basis) G = {g1, . . ,grg} ⊆ I\{0} is a Gröbner basis for I w.r.t. a fixed term order ➤ if f for any f ∈ I \ {0}, there exists g , ∈ G such that ht(g )|ht(f) where △ ht(p) denotes the head term of p(x ) ∈ C[x ] w.r.t. >>. We consider the linear map φτ : C[ x ] τ → C 1×mτ such that φτ ( t i ) = τ t where C[ x ] τ is the submodule of C[ x ] generated by an ordered set (the left-most element is the highest) of terms T = { t 1 , . . , t m τ }> and τ ( i = 1 , . . ,m τ ) denotes the canonical basis of C 1×m τ . The coefficient vector  P  of p( x ) ∈ C [ x ] is defined to be satisfying  P  = φτ(p) and p( x ) = φτ ( x ). With a fixed T , we consider the following subset F of I .
The Buchberger algorithm guarantees that G ⊆ F τ if T has a large enough number of elements (however, note that T must include some required elements depending on the term order). To compute a Gröbner basis for I , we construct the matrix M r ( F ) whose each row vector P = Φτ(p) is corresponding to each element of p( x ) ∈ Pτ(f) for each f( x ) ∈ F where
By this definition, F r and the linear space V r generated by the row vectors of M r ( F ) are isomorphic. We note that a matrix is said to be in the reduced row echelon form if it satisfies the following four conditions. 1. All nonzero rows appear above zero rows. 2. Each leading element of a row is in a column to the right of the leading element of the row above it. 3. The leading element in any nonzero row is 1. 4. Every leading element is the only nonzero element in its column. For the sake of completeness we present the following two lemmas with proofs introduced in [15] by the present author. Lemma 1  Let Mτ(F) be the reduced row echelon form of Mτ(F).  If gi(x) ∈ Fτ for a fixed i ∈ {1, . . ,r G}, M T (F') has a row vector  P  satisfying ht(g i ) = ht(φ 1 ( P )). Proof  Since the linear map φτ is defined by the ordered set T , each leading element of a row vector P of M τ(F) is corresponding to ht(φ 1 ( P )). The lemma follows from the facts that F and V T are isomorphic and all the leading entries of nonzero rows are disjoint since M 7 ( F ) is in the reduced row echelon form. □ Lemma 2  Let M 7 (F) be the reduced row echelon form of M 7 (F). If T has a large enough number of elements, the following G 7 is a Gröbner basis for I .
Proof  The Buchberger algorithm guarantees that G ⊆ F τ if T has a large enough number of elements. Therefore, G T satisfies the condition of Definition 1 since we have g i ( ī ) ∈ G T , i = {1, . . ,rg} by Lemma 1. □ Example 1 We compute the reduced Gröbner basis w.r.t. the graded lexicographic order for the ideal generated by the following polynomials.
We construct the following matrix Mτ(Fex) with T = {x 4, x 3 y, x 2 y 2 , x j 3 , y 4 , x 3 , x 2 y, x 2 , y 2 x 2 , xy , y 2 } (this set is large enough and not the minimum set for F ex ) and compute Mτ(Fex) the reduced row echelon form of M T ( F ex ). M T ( F ex ) =
We have G τ = {x 4 +͡xy², x³y −͡xy² +͡xy², xy³ − çxy², y ³ +͡xy², x³ − 2xy², x²y +͡xy, redundant elements. We note that in general we must check whether G is actually a Gröbner basis for I , or not, since Lemma 2 is valid only when T has a large enough number of elements.
2.1
Relation between Rank and Priori Errors
It seems that F fp in (1.1) at the beginning of Section 1.1 is one of perturbed sets of F ex in (2.1) at Example 1 by some errors. We note that we can not say this is correct in practice. In general, no one knows the actual polynomial set (with no errors) of F p . This means that F ex is just one of (infinitely many) possible cases of F fp . The aim of this paper is adding mathematical and practical meanings to the situation that we compute a Gröbner basis for F p with this property. To make the situation much simpler, we consider the following polynomial set F fp .
The difference between polynomial sets Fex and Ffp is just 0.000001xxy , and we have the fol- lowing M τ ( F fp ) which is very similar to M τ ( F α ). However, ranks of M τ ( F α ) and M τ ( F fp ) are not the same:  rank( M T ( F ex )) = 9 and rank( M T ( F f p )) = 11.
Moreover, the singular values of M T ( F j p ) are followings: {6.90335, 6.06098, 4.16844, 2.52968, 2.44446, 2.24685, 1.9732, 1.86836, 0.96183, 7.04525 × 10-7, 2.89525 × 10-7}. By Lemma 2 and the rank of M τ ( F fp ), if T also has a large enough number of elements for F fp , a Gröbner basis for the ideal generated by F fp has two extra polynomials against a Gröbner basis G 7 for F ex . These two polynomials must be generated by the tiny difference between the matrices and can be thought to be aftereffects of noise.  This means that the difference ( 0.000001xx ) hides the well structured result G τ and G for F ex . Therefore, if we'd like to unveil the well structured result from the given inexact input, finding the rank deficient matrix M τ ( F ex ) from M τ ( F p ) is the problem to be solved. Moreover, it easily happens that the rank of a matrix will increase by some perturbations (errors) though it also happens but rarely that the rank of a matrix may decrease, since a rank increase or decrease corresponds to an increase or decrease in entropy, respectively.  Hence, the difference of ranks can be thought to be aftereffects of a priori errors.  This situation is very similar to several algorithms for approximate polynomial GCD, factorization and so o n [9, 3, 29, 8]. Therefore, computing a Gröbner basis with inexact inputs also may be done by computing a rank deficient (structured) matrix and some known algorithms using floating point arithmetic, based on the conventional Buchberger algorithm. Remark 1  One may think that there is a big difference between exact and numerical ranks: a small element in absolute value may be ignored even if its relative error is much smaller than others. Hence a resulting Gröbner basis can be far from the original. This possibly happens but inevitable for the second kind of problem since any relativeness of errors is easily lost even if we just do only a single addition of polynomials (see the discussion in [15]). Again, please note that the aim of this paper is finding a meaningful result hidden by a priori errors from the given inexact input, and in general it is difficult as shown in Section 1.1 that we get some practical results by known methods (e.g. CGS).
Structured Gröbner basis
3
For approximate GCD and factorization, we usually assume that inexact input polynomials (with a priori errors) and unknown exact polynomials (with no error) have the same degree at most. This means that input and hidden desired polynomials are supposed to have the same structure. In order to state this kind of constraint in its full generality, we define a structured polynomial set.  Consider a mapping S i ( i = 1, . . , k ) from a parameter space C n 4 to a set of polynomials C[ ī ].  A polynomial set F = { f 1 , . . , f k } is called S-structured if each element f i ( ī ) of the set is in the image of S i , i.e., if there exists a parameter ī i ∈ C n i , such that f i ( x ) = S i ( p i ) . In this paper, we try to compute a numerical Gröbner basis by finding a rank deficient matrix as noted in the previous section. From this point of view, we introduce the following structured Gröbner basis (SGB for short). Definition 2 (Structured Gröbner basis) We say G is a S-structured Gröbner basis for F  with tolerance ε ∈ R ≥ 0 , rank deficiency d ∈ Z ≥ 0 and set of terms T if they satisfy the following conditions: 1. G is a Gröbner basis for the ideal generated by the following Fst = { fst,1, . . . , fst,k} E C[ X ]. 2. F and F st are S-structured polynomial sets, i.e., there exists parameters P i,P sti E C n i, such that f i ( x ) = S i ( p i ) and f st,i ( x ) = S i ( p st,i). 3. ||( P 1 . . . P k ) = ( P st 1 . . . P st k ) ||= ε where || · || denotes a suitable vector norm. 4.  rank( M T ( F st)) = rank( M T ( F )) — d.
By this definition, the aim of this paper becomes to find a method to compute a &-structured Gröbner basis for the given polynomial set F with the tolerance ε , the rank deficiency d , the set of terms T and S-structured polynomial set F st. Example 2 We show a S-structured Gröbner basis for the following Ffp introduced in (2.2) at Section 2.1.
We take the following structure specification S for example.
In this setting, the following G is a S-structured Gröbner basis for F f p w.r.t.  the graded lexicographic order with tolerance ε = 0.00001 in 2-norm, rank deficiency d = 2 and set of terms T = { x 4 , x 3 y, x 2 y 2 , xy 3 , y 4 , x 3 , x 2 y, xy 2 , y 3 , x 2 , xy, y 2 }.
Moreover, for this idealized case, we have
Note that S-structured Gröbner basis is not unique even for the fixed S, ε, d and T. The above G is just one of them. △
4
Algorithm for computing SGB
In this section, we introduce an algorithm for computing S-structured numerical Gröbner basis. The algorithm is not for exact &-structured Gröbner basis but for numerical ones since in general it is difficult to compute a nearby exact rank deficient structured matrix. We give some remarks about this difficulty in Section 5. To find a &-structured polynomial set F st we compute a rank deficient structured matrix. This can be done by several known methods for the following problem (SLRA: Structured Low Rank Approximation). Definition 3 (SLRA) Given a structure specification S : R nα → R m×n , a parameter vector p ∈ R nα , a vector norm || · ||, and an integer r , 0 < r < min{m,n}, find a vector p * such that
The SLRA problem can be solved by the lift-and-project method or solvers for the STLS problem (Structured Total Least Squares) under some convergent conditions (see Chapter 5 in [2]) and easily extended to complex numbers (see Chapter 2 in [12]). We note that the difference between the SLRA and STLS problems is the objective rank deficiency. The STLS problem is a special case of the SLRA problem with r = min{ m, n } − 1, however in some cases we can convert the SLRA problem to the STLS problem though this conversion (see [16, 2]) is not easy task for our problem according to our experiments. By the above discussions, we have the following algorithm for computing a S-structured numerical Gröbner basis. Algorithm 1 (&-structured numerical Gröbner basis) Input: F = { f 1 ( x ), . . , f k ( x )} ⊂ ⊂ − x ], a term order ≥ and a structure specification S. Output:  a &-structured Gröbner basis G for F with the tolerance ε , the rank deficiency d , the set of terms T and S-structured polynomial set F st , or failed. 1. Compute a numerical Gröbner basis    for the ideal generated by F , by some known algorithms and determine a suitable set of terms T based on the result. 2. Construct M τ ( F ) ∈ C m×n , compute its non-zero singular values σ i ( i = 1, . . . , r org ) and determine a suitable rank deficiency d (Take the largest d such that σ r org –d+1/σrorg –d < 10-² for example). If there is no such d found, output failed. 3. By a solver for the SLRA problem, find a S-structured polynomial set F st with the rank deficiency d satisfying rank( M T ( F st )) = rank( M T ( F )) − d and compute the tolerance ε If there is no such F st found, output failed. 4. Compute a numerical Gröbner basis G for the ideal generated by F st , by some known algorithms and output {G, ε, d, T, Fst}. The above algorithm is very simple however it works as shown in the following examples and for Ffp in (1.1) at the beginning of Section 1.1. Example 3 Suppose that we compute a S-structured numerical Gröbner basis w.r.t. the lexicographic order for the following polynomial set F . F = {x³ + x²y², x²y² − y³,  −x²y + 1.00001x² + xy² + 0.99999y²}. This is the following polynomial set F δ with δ = 10−6, which is introduced by Sasaki and Kako (Example 5,[17]). F δ = {x 3 + x 2 y 2 , x 2 y 2 − y 3 , −x 2 y + (1 + δ)x 2 + xy 2 + (1 − δ)y 2 } . In this case, by the algorithm (appGröbner, [17]) with initial precision² ε Init = 10−16 and approximate-zero threshold ε 2 = 10−15 , we get the following Gröbner basis and the set of terms T. G az = {1.0 x 2 − 2.00001 y 3 + 0.999998 y 2 , 1.0 xy 2 + 1.000001 y 3 , 1.0 y 4 − 1.000001 y 3 }, T = {x 4y 4, x 4y 3, x 4y 2, x 4y, x 3y 4, x 3y 3, x 3y 2, x 3y 2, x 3y 2, x 2y 5, x 2y 4, x 2y 3, We construct M T ( F ) ∈ C 30×26 and determine the rank deficiency d = 4 since we get the following singular values and σ 26 – 4+1/σ 26 – 4 = 1.47591 × 10 –6 . {2.12971, 1.84588, . . . (18 elements snipped) . . . , 0.282599, 0.238185, 3.51538 × 10-7, 3.04624 × 10-7, 1.66608 × 10-16, 1.66608 × 10-16}. We take the following structure specification S.
By the lift-and-project method (a solver for the SLRA problem), we get the following S- structured polynomial set F st with tolerance ε = 7.2326×10− 7 in 2-norm, such that rank( M T ( F st )) = rank( M T (F )) − d. F st = {1.0000023 x ³ + 0.999998 x ² y ² , 1.00000018 x ² y ² − 0.999998 y ³ − 0.9999968 x ² y + 1.0000073 x ² + 1.0000027 x y ² + 0.9999932 y ² } . Finally, by the algorithm (appGröbner, [17]), we get the following S-structured numerical Gröbner basis for F.
We note that this result is compatible to the following comprehensive Gröbner system for F if we think that δ represents a priori errors.
△ Example 4 Suppose that we compute a S-structured numerical Gröbner basis w.r.t. the graded lexicographic order for the following polynomial set F .
This is generated by adding small random perturbations to the following polynomial set Fex introduced by Sasaki and Kako (Example 6,[17]).
In this case, by the algorithm (appGröbner, [17]) with initial precision ε Init = 10−16 and approximate-zero threshold ε z = 10−15 , we get the following Gröbner basis and the set of terms T .
We construct M T ( F ) ∈ C 75×63 and determine the rank deficiency d = 7 since we get the following singular values and σ 63-7+1/σ 63-7 = 0.00724885. {2.14386, 2.08212, . . . (52 elements snipped) . . . , 0.0441, 0.0384606, 0.000278795, 0.000234535, 0.000181527, 0.000128085, 0.0000768688, 1.78766 × 10-16, 1.78766 × 10-16}. We take the following structure specification S.
We get the following S-structured polynomial set F st with tolerance ε = 0.00200393 in 2-norm, such that rank( M T ( F st )) = rank( M T ( F )) − d, by the lift-and-project method (a solver for the SLRA problem).
Finally, by the algorithm (appGröbner, [17]), we get the following S-structured numerical Gröbner basis for F. G = {1.0yz + 0.499885,  1.0x + 1.33349y}. We note that the result is very similar to the following exact S-structured Gröbner basis which is the reduced Gröbner basis for the original polynomial set without perturbations though as noted in former sections we can not say that this is the unique correct answer. However, the result shows that we extracted a meaningful numerical Gröbner basis from the given inexact input. As shown in the above examples, Algorithm 1 can compute a &-structured numerical Gröbner basis. However, we note that the algorithm works only as a preconditioning method and does not improve the numerical stability. It is the different problem. For example, the algorithm outputs failed and does not give us any new useful information on the following polynomial set used by Kondratyev and others [10]. h 1 = 1.027748y 2 − 0.467871 xy + 2.972252 x 2 + 0.662026y + 0.0785252 x − 3.88889, h 2 = 3.958378y² + 0.701807xy + 1.041622x² − 0.0785252y + 0.662026x − 3.88889. The reason is very simple.  This polynomial set does not have any other &-structured polynomial set with any small tolerance ε and rank deficiency d > 0 if we take T = { y 6 , xy δ , y δ , x 2 y 4 , xy 4 , y 4 , x³y³, x²y³, xy³, y³, x 4y², x³y², x²y², xy², y², x²y, x²y, xy, y, x²y, xy², 1} for example. In fact, h 1 and h 2 are introduced by Stetter [22], by decimal approximations hence they do not have a priori errors from the data mining point of view in this paper.
Remarks
5
In general the SLRA problem is NP-hard except for a few special cases (see [13] for details).  Our algorithm fully depends on the SLRA problem hence Algorithm 1 is not efficient in computation time. However, the lift-and-project method can find a local optimum in terms of the difference ε between F and F st if each iteration constructs a distinct projection (see [5] for details). Our algorithm is to find a rank deficient matrix from the matrix having a large gap among its singular values hence this helps the lift-and-project method to start with a matrix near its local optimum. One may be interested in the effectiveness of Algorithm 1 and think that the lift-and-project method converges only for toy examples. To see this, we generated 3 cases (A,B and C) of 100 polynomial sets in two variables and apply the algorithm with the graded lexicographic order. Each polynomial set is randomly generated as follows: 1) generate a Gröbner basis with 3 basis polynomials of total degree t b at most having 2,3 or 4 terms with integer coefficients ∈ [−10, 10], 2) generate a polynomial set with 4 syzygies of total degree ts at most having 2,3 or 4 terms with integer coefficients ∈ [−10,10], and 3) perturb the all coefficients by relative noises E [−10−5, 10−5]. In Table 1, '# p ' denotes the average of the number of parameters of structure specifications used in the algorithm, 'w/o' denotes the number of good results by our appGröbner implemen- tation, 'with' denotes the number of good results by Algorithm 1, 'ε' denotes the average of tolerances of good results in 2-norm, and 'diff' denotes the average of differences between the resulting Gröbner basis by Algorithm 1 and the Gröbner basis for the exact polynomial set in 2-norm, where "good result" means that its resulting 'diff' is enough small. It shows that our algorithm can extract a meaningful basis for the inexact input which the known algorithm can not work for. Note that our appGröbner implementation can work more if we have enough information on a priori errors (e.g. suitable initial precision and approximate- zero threshold). Moreover, for most of the failure polynomial sets, Algorithm 1 can compute meaningful results if we specify suitable rank deficiencies though this is difficult since in such cases the gaps among singular values are not large.
For polynomials in more than two variables or polynomials of higher degrees, it becomes difficult to determine a suitable set of terms T since most of generated syzygies during computa- tions in Step 1 becomes unreliable.  This forces us to use much larger T hence the lift-and-project method has to operate with a huge matrix and its convergence speed becomes very slow. A simple workaround is replacing Step 4 with the following. 4. Compute a numerical Gröbner basis G for the ideal generated by F st , by some known algorithms.  Output { G, ε, d, T, Fst } if the suitable set of terms T is unchanged, otherwise go to Step 2 with a new suitable set of terms T . However, this step tends to cause an infinite loop and not so efficient according to our experi- ments hence this does not resolve the problem. Therefore, the followings are open questions for further work. ● Finding a method to determine a suitable set of terms T in terms of S-structured Gröbner basis for the input. ● Finding a better method for our SLRA problem. ● Finding a method to compute an optimal S-structured numerical Gröbner basis w.r.t. the tolerance ε.
Acknowledgements
The author wishes to thank Prof. Nabeshima and Mr.  Kurata for their contributions in computing the large comprehensive Gröbner system (e.g. 263 segments). The information is very helpful to note the introductory section.