123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415 |
- \documentstyle[11pt,reduce]{article}
- \title{\bf XIDEAL\\
- Gr{\"o}bner Bases for Exterior Algebra}
- \author{
- David Hartley
- \thanks{Postal address: GMD--SCAI, D--53754 St~Augustin, Germany.}
- \thanks{Email: Hartley@gmd.de} \\
- Institute for Algorithms and Scientific Computing \\
- GMD --- German National Research Center \\
- for Information Technology \\
- St Augustin, Germany \\
- \\ \and
- Philip A.~Tuckey\thanks{Email: pat@rs3.univ-fcomte.fr} \\
- Laboratoire de Physique Moleculaire \\
- UFR des Sciences et Techniques \\
- Universite de Franche-Comte \\
- 25030 Besancon \\
- France
- }
- \date{Version 2.4}
- \begin{document}
- \maketitle
- \section{Description}
- The method of Gr{\"o}bner bases in commutative polynomial rings introduced by
- Buchberger (e.g.~\cite{Buchberger}) is a well-known and very important tool
- in polynomial ideal theory, for example in solving the ideal membership
- problem. XIDEAL extends the method to exterior algebras using
- algorithms from \cite{HT} and \cite{Apel}.
- There are two main departures from the commutative polynomial case. First,
- owing to the non-commutative product in exterior algebras, ideals are no
- longer automatically two-sided, and it is necessary to distinguish between
- left and right ideals. Secondly, because there are zero divisors, confluent
- reduction relations are no longer sufficient to solve the ideal membership
- problem: a unique normal form for every polynomial does not guarantee that
- all elements in the ideal reduce to zero. This leads to two possible
- definitions of Gr{\"o}bner bases as pointed out by Stokes \cite{Stokes}.
- XIDEAL constructs Gr{\"o}bner bases for solving the left ideal membership
- problem: Gr{\"o}bner left ideal bases or GLIBs. For graded ideals, where each
- form is homogeneous in degree, the distinction between left and right
- ideals vanishes. Furthermore, if the generating forms are all homogeneous,
- then the Gr{\"o}bner bases for the non-graded and graded ideals are
- identical. In this case, XIDEAL is able to save time by truncating the
- Gr{\"o}bner basis at some maximum degree if desired.
- XIDEAL uses the exterior calculus package EXCALC of E.~Schr{\"u}fer
- \cite{EXCALC} to provide the exterior algebra definitions. EXCALC is loaded
- automatically with XIDEAL.
- % The basis 1-forms for the exterior algebra
- % are automatically extracted from the input. Consequently, each expression
- % must be written in terms of these 1-forms -- $p$-form kernels with $p>1$
- % are not allowed. Similarly all distinct 1-forms in the input are assumed to
- % be linearly independent -- if a dimension has been fixed (using the EXCALC
- % \f{SPACEDIM} or \f{COFRAME} statements), then input containing more than this
- % number of distinct 1-forms will generate an error. The exterior algebra can
- % be based on either an abstract vector space or the cotangent space at some
- % fixed point on a manifold. Any functions or 0-forms are treated as constant
- % non-vanishing coefficients.
- The exterior variables may be specified explicitly, or extracted
- automatically from the input polynomials. All distinct exterior variables
- in the input are assumed to be linearly independent -- if a dimension has
- been fixed (using the EXCALC \f{spacedim} or \f{coframe} statements), then
- input containing distinct exterior variables with degrees totaling more
- than this number will generate an error.
- % The term ordering used is the graded lexicographical ordering based on the
- % prevailing EXCALC kernel ordering for the basis 1-forms. This puts
- % highest degree first and then sorts terms of the same degree
- % lexicographically. The EXCALC kernel ordering can be changed with the
- % \REDUCE{} \f{KORDER} or EXCALC \f{FORDER} statements.
- \section{Declarations}
- \subsubsection*{xorder}
- \f{xorder} sets the term ordering for all other calculations. The syntax is
- \begin{verbatim}
- xorder k
- \end{verbatim}
- where \f{k} is one of \f{lex}, \f{gradlex} or \f{deglex}. The
- lexicographical ordering \f{lex} is based on the prevailing EXCALC kernel
- ordering for the exterior variables. The EXCALC kernel ordering can be
- changed with the \REDUCE{} \f{korder} or EXCALC \f{forder} declarations. The
- graded lexicographical ordering \f{gradlex} puts terms with more factors
- first (irrespective of their exterior degrees) and sorts terms of the same
- grading lexicographically. The degree lexicographical ordering \f{deglex}
- takes account of the exterior degree of the variables, putting highest
- degree first and then sorting terms of the same degree lexicographically.
- The default ordering is \f{deglex}.
- \subsubsection*{xvars}
- It is possible to consider scalar and 0-form variables in exterior
- polynomials in two ways: as variables or as coefficient parameters. This
- difference is crucial for Gr{\"o}bner basis calculations. By default, all
- scalar variables which have been declared as 0-forms are treated as
- exterior variables, along with any EXCALC kernels of degree 0. This
- division can be changed with the \f{xvars} declaration. The syntax is
- \begin{verbatim}
- xvars U,V,W,...
- \end{verbatim}
- where the arguments are either kernels or lists of kernels. All variables
- specified in the \f{xvars} declaration are treated as exterior variables in
- subsequent XIDEAL calculations with exterior polynomials, and any other
- scalars are treated as parameters. This is true whether or not the
- variables have been declared as 0-forms. The declaration
- \begin{verbatim}
- xvars {}
- \end{verbatim}
- causes all degree 0 variables to be treated as parameters, and
- \begin{verbatim}
- xvars nil
- \end{verbatim}
- restores the default. Of course, $p$-form kernels with $p\not=0$ are always
- considered as exterior variables. The order of the variables in an
- \f{xvars} declaration has no effect on the \REDUCE{} kernel ordering or
- XIDEAL term ordering.
- \section{Operators}
- \subsubsection*{xideal}
- \f{xideal} calculates a Gr{\"o}bner left ideal basis in
- an exterior algebra. The syntax is
- \begin{verbatim}
- xideal(S:list of forms[,V:list of kernels][,R:integer])
- :list of forms.
- \end{verbatim}
- \f{xideal} calculates a Gr{\"o}bner basis for the left ideal generated by
- \f{S} using the current term ordering. The resulting list can be used for
- subsequent reductions with \f{xmod} as long as the term ordering is not
- changed. Which 0-form variables are to be regarded as exterior variables
- can be specified in an optional argument \f{V} (just like an \f{xvars}
- declaration). The order of variables in \f{V} has no effect on the term
- ordering. If the set of generators \f{S} is graded, an optional parameter
- \f{R} can be given, and \f{xideal} produces a truncated basis suitable for
- reducing exterior forms of degree less than or equal to \f{R} in the left
- ideal. This can save time and space with large problems, but the result
- cannot be used for exterior forms of degree greater than \f{R}. The forms
- returned by \f{xideal} are sorted in increasing order. See also the
- switches \f{trxideal} and \f{xfullreduction}.
- \subsubsection*{xmodideal}
- \f{xmodideal} reduces exterior forms to their (unique) normal forms modulo
- a left ideal. The syntax is
- \begin{verbatim}
- xmodideal(F:form, S:list of forms):form
- \end{verbatim}
- or
- \begin{verbatim}
- xmodideal(F:list of forms, S:list of forms)
- :list of forms.
- \end{verbatim}
- An alternative infix syntax is also available:
- \begin{verbatim}
- F xmodideal S.
- \end{verbatim}
- \f{xmodideal(F,S)} first calculates a Gr{\"o}bner basis for the left ideal
- generated by \f{S}, and then reduces \f{F}. \f{F} may be either a single
- exterior form, or a list of forms, and \f{S} is a list of forms. If \f{F}
- is a list of forms, each element is reduced, and any which vanish are
- deleted from the result.
- % If this operator is used more than once, and \f{S} does not change
- % between calls, then the Gr{\"o}bner basis is not recalculated.
- If the set of generators \f{S} is graded, then a truncated Gr{\"o}bner basis
- is calculated using the degree of \f{F} (or the maximal degree in
- \f{F}). See also \f{trxmod}.
- \subsubsection*{xmod}
- \f{xmod} reduces exterior forms to their (not necessarily unique) normal
- forms modulo a set of exterior polynomials. The syntax is
- \begin{verbatim}
- xmod(F:form, S:list of forms):form
- \end{verbatim}
- or
- \begin{verbatim}
- xmod(F:list of forms, S:list of forms):list of forms.
- \end{verbatim}
- An alternative infix syntax is also available:
- \begin{verbatim}
- F xmod S.
- \end{verbatim}
- \f{xmod(F,S)} reduces \f{F} with respect to the set of exterior polynomials
- \f{S}, which is not necessarily a Gr{\"o}bner basis. \f{F} may be either a
- single exterior form, or a list of forms, and \f{S} is a list of
- forms. This operator can be used in conjunction with \f{xideal} to produce
- the same effect as \f{xmodideal}: for a single homogeneous form \f{F} and a
- set of exterior forms \f{S}, \f{F xmodideal S} is equivalent to \f{F xmod
- xideal(S,exdegree F)}. See also \f{trxmod}.
- \subsubsection*{xauto}
- \f{xauto} autoreduces a set of exterior forms. The syntax is
- \begin{verbatim}
- xauto(S:list of forms):list of forms.
- \end{verbatim}
- \f{xauto S} returns a set of exterior polynomials which generate the same
- left ideal, but which are in normal form with respect to each other. For
- linear expressions, this is equivalent to finding the reduced row echelon
- form of the coefficient matrix.
- \subsubsection*{excoeffs}
- The operator \f{excoeffs}, with syntax
- \begin{verbatim}
- excoeffs(F:form):list of expressions
- \end{verbatim}
- returns the coefficients from an exterior form as a list. The coefficients
- are always scalars, but which degree 0 variables count as coefficient
- parameters is controlled by the command \f{xvars}.
- \subsubsection*{exvars}
- The operator \f{exvars}, with syntax
- \begin{verbatim}
- exvars(F:form):list of kernels
- \end{verbatim}
- returns the exterior powers from an exterior form as a list. All non-scalar
- variables are returned, but which degree 0 variables count as coefficient
- parameters is controlled by the command \f{xvars}.
- \section{Switches}
- \subsubsection*{xfullreduce}
- \f{on xfullreduce} allows \f{xideal} and \f{xmodideal} to calculate
- reduced, monic Gr{\"o}bner bases, which speeds up subsequent reductions, and
- guarantees a unique form for the Gr{\"o}bner basis. \f{off xfullreduce} turns
- of this feature, which may speed up calculation of some Gr{\"o}bner
- basis. \f{xfullreduce} is \f{on} by default.
- \subsubsection*{trxideal}
- \f{on trxideal} produces a trace of the calculations done by \f{xideal} and
- \f{xmodideal}, showing the basis polynomials and the results of the
- critical element calculations. This can generate profuse amounts of output.
- \f{trxideal} is \f{off} by default.
- \subsubsection*{trxmod}
- \f{on trxmod} produces a trace of reductions to normal form during
- calculations by XIDEAL operators. \f{trxmod} is \f{off} by default.
- % \subsubsection*{XSTATS}
- % \f{ON XSTATS} produces counting and timing information. As \f{XIDEAL} is
- % running, a hash mark (\verb.#.) is printed for each form taken from the
- % input list, followed by a sequences of carets (\verb.^.) and dollar signs
- % (\verb.$.). Each caret represents a new basis element obtained by a simple
- % wedge product, and each dollar sign represents a new basis element obtained
- % from an S-polynomial. At the end, a table is printed summarising the
- % calculation. \f{XSTATS} is \f{OFF} by default.
- \section{Examples}
- Suppose XIDEAL has been loaded, the switches are at their default settings,
- and the following exterior variables have been declared:
- \begin{verbatim}
- pform x=0,y=0,z=0,t=0,f(i)=1,h=0,hx=0,ht=0;
- \end{verbatim}
- In a commutative polynomial ring, a single polynomial is its own Gr{\"o}bner
- basis. This is no longer true for exterior algebras because of the presence
- of zero divisors, and can lead to some surprising reductions:
- \begin{verbatim}
- xideal {d x^d y - d z^d t};
- {d t^d z + d x^d y,
- d x^d y^d z,
- d t^d x^d y}
- f(3)^f(4)^f(5)^f(6)
- xmodideal {f(1)^f(2) + f(3)^f(4) + f(5)^f(6)};
- 0
- \end{verbatim}
- The heat equation, $h_{xx}=h_t$ can be represented by the following
- exterior differential system.
- \begin{verbatim}
- S := {d h - ht*d t - hx*d x,
- d ht^d t + d hx^d x,
- d hx^d t - ht*d x^d t};
- \end{verbatim}
- \f{xmodideal} can be used to check that the exterior differential system is
- closed under exterior differentiation.
- \begin{verbatim}
- d S xmodideal S;
- {}
- \end{verbatim}
- \f{xvars}, or a second argument to \f{xideal} can be used to change the
- division between exterior variables of degree 0 and parameters.
- \begin{verbatim}
- xideal {a*d x+y*d y};
- d x*a + d y*y
- {---------------}
- a
- xvars {a};
- xideal {a*d x+y*d y};
-
- {d x*a + d y*y,d x^d y}
-
- xideal({a*d x+y*d y},{a,y});
-
- {d x*a + d y*y,
-
- d x^d y*y}
-
- xvars {}; % all 0-forms are coefficients
- excoeffs(d u - (a*p - q)*d y);
-
- {1, - a*p + q}
-
- exvars(d u - (a*p - q)*d y);
- {d u,d y}
- xvars {p,q}; % p,q are no longer coefficients
- excoeffs(d u - (a*p - q)*d y);
-
- { - a,1,1}
- exvars(d u - (a*p - q)*d y);
- {d y*p,d y*q,d u}
- xvars nil;
- \end{verbatim}
- Non-graded left and right ideals are no longer the same:
- \begin{verbatim}
- d t^(d z+d x^d y) xmodideal {d z+d x^d y};
- 0
- (d z+d x^d y)^d t xmodideal {d z+d x^d y};
- - 2*d t^d z
- \end{verbatim}
- Any form containing a 0-form term generates the whole ideal:
- \begin{verbatim}
- xideal {1 + f(1) + f(1)^f(2) + f(2)^f(3)^f(4)};
- {1}
- \end{verbatim}
- \begin{thebibliography}{M}
- \bibitem{Buchberger}
- B.~Buchberger, {\em
- Gr{\"o}bner Bases: an algorithmic method in polynomial ideal theory,}
- in {\em Multidimensional Systems Theory\/} ed.~N.K.~Bose
- (Reidel, Dordrecht, 1985) chapter 6.
- \bibitem{HT}
- D.~Hartley and P.A.~Tuckey, {\em
- A Direct Characterisation of Gr{\"o}bner Bases in Clifford and
- Grassmann Algebras,}
- Preprint MPI-Ph/93--96 (1993).
- \bibitem{Apel}
- J.~Apel, {\em A relationship between Gr{\"o}bner bases of ideals and
- vector modules of G-algebras,}
- Contemporary Math.~{\bf 131}(1992)195--204.
- \bibitem{Stokes}
- T.~Stokes, {\em
- Gr{\"o}bner bases in exterior algebra,}
- J.~Automated Reasoning {\bf 6}(1990)233--250.
- \bibitem{EXCALC}
- E.~Schr{\"u}fer, {\em
- EXCALC, a system for doing calculations in the calculus of modern
- differential geometry, User's manual,}
- (The Rand Corporation, Santa Monica, 1986).
- \end{thebibliography}
- \end{document}
|