Artifact 60900fd287fe54d6e5903e46a58d90eece7a0878d3748e241dafa62da13b815b:
- File
r36/doc/INVBASE.TEX
— part of check-in
[152fb3bdbb]
at
2011-10-17 17:58:33
on branch master
— svn:eol-style, svn:executable and line endings for files
in historical/r36 treegit-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/trunk/historical@1480 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: schoepf@users.sourceforge.net, size: 7512) [annotate] [blame] [check-ins using] [more...]
\documentstyle[12pt]{article} \textwidth 155mm \textheight 225mm \topmargin -10mm \oddsidemargin 7mm \evensidemargin 7mm \pagestyle{empty} \begin{document} \def \bg #1 {\begin{tabular}{{#1}}} \def \nd {\end{tabular}} \begin{center} {\large \bf INVBASE: A Package for Computing Involutive Bases} \vskip 0.7cm \noindent A.Yu.Zharkov, Yu.A.Blinkov\\ Saratov University\\ Astrakhanskaya 83\\ 410071 Saratov\\ Russia\\ Email: postmaster@scnit.saratov.su\\ \end{center} \vspace{0.3cm} \vskip 0.5cm \section{Introduction} Involutive bases are a new tool for solving problems in connection with multivariate polynomials, such as solving systems of polynomial equations and analyzing polynomial ideals, see \cite{Lille}. An involutive basis of polynomial ideal is nothing but a special form of a redundant Gr\"obner basis. The construction of involutive bases reduces the problem of solving polynomial systems to simple linear algebra.\\ The INVBASE package \footnote{The REDUCE implementation has been supported by the Konrad-Zuse-Zentrum Berlin} calculates involutive bases of polynomial ideals using an algorithm described in \cite{Lille} which may be considered as an alternative to the well-known Buchberger algorithm \cite{Buch}. The package can be used over a variety of different coefficient domains, and for different variable and term orderings.\\ The algorithm implemented in the INVBASE package is proved to be valid for any zero-dimensional ideal (finite number of solutions) as well as for positive-dimensional ideals in generic form. However, the algorithm does not terminate for ``sparse'' positive-dimensional systems. In order to stop the process we use the maximum degree bound for the Gr\"obner bases of generic ideals in the total-degree term ordering established in \cite{Laz}. In this case, it is reasonable to call the GROEBNER package with the answer of INVBASE as input information in order to compute the reduced Gr\"obner basis under the same variable and term ordering.\\ Though the INVBASE package supports computing involutive bases in any admissible term ordering, it is reasonable to compute them only for the total-degree term orderings. The package includes a special algorithm for conversion of total-degree involutive bases into the triangular bases in the lexicographical term ordering that is desirable for finding solutions. Normally the sum of timings for these two computations is much less than the timing for direct computation of the lexicographical involutive bases. As a rule, the result of the conversion algorithm is a reduced Gr\"obner basis in the lexicographical term ordering. However, because of some gaps in the current version of the algorithm, there may be rare situations when the resulting triangular set does not possess the formal property of Gr\"obner bases. Anyway, we recommend using the GROEBNER package with the result of the conversion algorithm as input in order either to check the Gr\"obner bases property or to transform the result into a lexicographical Gr\"obner basis. \section{The Basic Operators} \subsection{Term Ordering} The following term order modes are available: $$ REVGRADLEX,\; GRADLEX,\; LEX $$ These modes have the same meaning as for the GROEBNER package.\\ All orderings are based on an ordering among the variables. For each pair of variables an order relation $>$ must be defined, e.g. $x>y$. The term ordering mode as well as the order of variables are set by the operator $$ INVTORDER\,<mode>,\{x_1,...,x_n\} $$ where $<mode>$ is one of the term order modes listed above. The notion of $\{x_1,...,x_n\}$ as a list of variables at the same time means $x_1>...>x_n$. \vskip 0.1cm \noindent {\bf Example 1.} $$ INVTORDER\>\,REVGRADLEX,\{x,y,z\} $$ sets the reverse graduated term ordering based on the variable order $x>y>z$.\\ The operator $INVTORDER$ may be omitted. The default term order mode is $REV\-GRADLEX$ and the default decreasing variable order is alphabetical (or, more generally, the default REDUCE kernel order). Furthermore, the list of variables in the $INVTORDER$ may be omitted. In this case the default variable order is used. \subsection{Computing Involutive Bases} To compute the involutive basis of ideal generated by the set of polynomials $\{p_1,...,p_m\}$ one should type the command $$ INVBASE \> \{p_1,...,p_m\} $$ where $p_i$ are polynomials in variables listed in the $INVTORDER$ operator. If some kernels in $p_i$ were not listed previously in the $INVTORDER$ operator they are considered as parameters, i.e. they are considered part of the coefficients of polynomials. If $INVTORDER$ was omitted, all the kernels in $p_i$ are considered as variables with the default REDUCE kernel order.\\ The coefficients of polynomials $p_i$ may be integers as well as rational numbers (or, accordingly, polynomials and rational functions in the parametric case). The computations modulo prime numbers are also available. For this purpose one should type the REDUCE commands $$ ON \> MODULAR;\> SETMOD \> p; $$ where $p$ is a prime number.\\ The value of the $INVBASE$ function is a list of integer polynomials $\{g_1,...,g_n\}$ representing an involutive basis of a given ideal.\\ \newpage \noindent {\bf Example 2.} \begin{eqnarray*} & & INVTORDER \> REVGRADLEX,\{x,y,z\}; \\ & & g:= INVBASE \> \{4*x**2 + x*y**2 - z + 1/4,\> 2*x + y**2*z + 1/2,\> \\ & & x**2*z - 1/2*x - y**2 \}; \end{eqnarray*} The resulting involutive basis in the reverse graduate ordering is \begin{eqnarray*} g := \{& & 8*x*y*z^3 - 2*x*y*z^2 + 4*y^3 - \\ & & 4*y*z^2 + 16*x*y + 17*y*z - 4*y,\\ & & 8*y^4 - 8*x*z^2 - 256*y^2 + 2*x*z + 64*z^2 - 96*x + 20*z - 9,\\ & & 2*y^3*z + 4*x*y + y,\\ & & 8*x*z^3 - 2*x*z^2 + 4*y^2 - 4*z^2 + 16*x + 17*z - 4,\\ & & - 4*y*z^3 - 8*y^3 + 6*x*y*z + y*z^2 - 36*x*y - 8*y,\\ & & 4*x*y^2 + 32*y^2 - 8*z^2 + 12*x - 2*z + 1,\\ & & 2*y^2*z + 4*x + 1,\\ & & - 4*z^3 - 8*y^2 + 6*x*z + z^2 - 36*x - 8,\\ & & 8*x^2 - 16*y^2 + 4*z^2 - 6*x - z \quad \} \end{eqnarray*} To convert it into a lexicographical Gr\"obner basis one should type $$ h:=INVLEX\>g; $$ The result is \begin{eqnarray*} h :=\{& &3976*x + 37104*z^6 - 600*z^5 + 2111*z^4 + \\ & & 122062*z^3 + 232833*z^2 - 680336*z + 288814,\\ & & 1988*y^2 - 76752*z^6 + 1272*z^5 - 4197*z^4 - \\ & & 251555*z^3 - 481837*z^2 + 1407741*z - 595666,\\ & & 16*z^7 - 8*z^6 + z^5 + 52*z^4 + 75*z^3 - 342*z^2 + 266*z - 60 \quad \} \end{eqnarray*} In the case of ``sparse'' positive-dimensioned system when the involutive basis in the sense of \cite{Lille} does not exist, you get the error message $$ *****\> MAXIMUM \> DEGREE \> BOUND \> EXCEEDED $$ The resulting list of polynomials which is not an involutive basis is stored in the share variable INVTEMPBASIS. In this case it is reasonable to call the GROEBNER package with the value of INVTEMPBASIS as input under the same variable and term ordering. \begin{thebibliography}{99} \bibitem{Lille} Zharkov A.Yu., Blinkov Yu.A. Involution Approach to Solving Systems of Algebraic Equations. Proceedings of the IMACS '93, 1993, 11-16. \bibitem{Buch} Buchberger B. Gr\"obner bases: an Algorithmic Method in Polynomial Ideal Theory. In: (Bose N.K., ed.) Recent Trends in Multidimensional System Theory, Reidel, 1985. \bibitem{Laz} Lazard D. Gr\"obner Bases, Gaussian Elimination and Resolution of Systems of Algebraic Equations. Proceedings of EUROCAL '83. Lecture Notes in Computer Science 162, Springer 1983, 146-157. \end{thebibliography} \end{document}