aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/pages/DMP.ht
diff options
context:
space:
mode:
Diffstat (limited to 'src/hyper/pages/DMP.ht')
-rw-r--r--src/hyper/pages/DMP.ht87
1 files changed, 87 insertions, 0 deletions
diff --git a/src/hyper/pages/DMP.ht b/src/hyper/pages/DMP.ht
new file mode 100644
index 00000000..3240ddc1
--- /dev/null
+++ b/src/hyper/pages/DMP.ht
@@ -0,0 +1,87 @@
+% Copyright The Numerical Algorithms Group Limited 1992-94. All rights reserved.
+% !! DO NOT MODIFY THIS FILE BY HAND !! Created by ht.awk.
+\newcommand{\DistributedMultivariatePolynomialXmpTitle}{DistributedMultivariatePolynomial}
+\newcommand{\DistributedMultivariatePolynomialXmpNumber}{9.16}
+%
+% =====================================================================
+\begin{page}{DistributedMultivariatePolynomialXmpPage}{9.16 DistributedMultivariatePolynomial}
+% =====================================================================
+\beginscroll
+
+%-% \HDexptypeindex{DistributedMultivariatePolynomial}{DistributedMultivariatePolynomialXmpPage}{9.16}{DistributedMultivariatePolynomial}
+%-% \HDexptypeindex{HomogeneousDistributedMultivariatePolynomial}{DistributedMultivariatePolynomialXmpPage}{9.16}{DistributedMultivariatePolynomial}
+\texht{\hyphenation{
+Homo-gen-eous-Dis-tributed-Multi-var-i-ate-Pol-y-nomial
+}}{}
+
+\spadtype{DistributedMultivariatePolynomial} and
+\spadtype{HomogeneousDistributedMultivariatePolynomial}, abbreviated
+\spadtype{DMP} and \spadtype{HDMP}, respectively, are very similar to
+\spadtype{MultivariatePolynomial} except that they are represented and
+displayed in a non-recursive manner.
+\xtc{
+}{
+\spadpaste{(d1,d2,d3) : DMP([z,y,x],FRAC INT) \bound{d1dec d2dec d3dec}}
+}
+\xtc{
+The constructor
+\spadtype{DMP} orders its monomials lexicographically while
+\spadtype{HDMP} orders them by total order refined by reverse
+lexicographic order.
+}{
+\spadpaste{d1 := -4*z + 4*y**2*x + 16*x**2 + 1 \bound{d1}\free{d1dec}}
+}
+\xtc{
+}{
+\spadpaste{d2 := 2*z*y**2 + 4*x + 1 \bound{d2}\free{d2dec}}
+}
+\xtc{
+}{
+\spadpaste{d3 := 2*z*x**2 - 2*y**2 - x \bound{d3}\free{d3dec}}
+}
+\xtc{
+These constructors are mostly used in \texht{Gr\"{o}bner}{Groebner}
+%-% \HDindex{Groebner basis@{Gr\protect\"{o}bner basis}}{DistributedMultivariatePolynomialXmpPage}{9.16}{DistributedMultivariatePolynomial}
+basis calculations.
+}{
+\spadpaste{groebner [d1,d2,d3] \free{d1 d2 d3}}
+}
+\xtc{
+}{
+\spadpaste{(n1,n2,n3) : HDMP([z,y,x],FRAC INT) \bound{ndec}}
+}
+\xtc{
+}{
+\spadpaste{(n1,n2,n3) := (d1,d2,d3) \free{ndec}\bound{n}\free{d1 d2 d3}}
+}
+\xtc{
+Note that we get a different
+\texht{Gr\"{o}bner}{Groebner} basis
+when we use the \spadtype{HDMP} polynomials, as expected.
+}{
+\spadpaste{groebner [n1,n2,n3] \free{n}}
+}
+
+\spadtype{GeneralDistributedMultivariatePolynomial} is somewhat
+more flexible in the sense that as well as accepting a list of
+variables to specify the variable ordering, it also takes a
+predicate on exponent vectors to specify the term ordering.
+With this polynomial type the user can experiment with the effect
+of using completely arbitrary term orderings.
+This flexibility is mostly important for algorithms such as
+\texht{Gr\"{o}bner}{Groebner} basis calculations which can be very
+sensitive to term ordering.
+%-% \HDexptypeindex{GeneralDistributedMultivariatePolynomial}{DistributedMultivariatePolynomialXmpPage}{9.16}{DistributedMultivariatePolynomial}
+
+For more information on related topics, see
+\downlink{``\ugIntroVariablesTitle''}{ugIntroVariablesPage} in Section \ugIntroVariablesNumber\ignore{ugIntroVariables},
+\downlink{``\ugTypesConvertTitle''}{ugTypesConvertPage} in Section \ugTypesConvertNumber\ignore{ugTypesConvert},
+\downlink{`Polynomial'}{PolynomialXmpPage}\ignore{Polynomial},
+\downlink{`UnivariatePolynomial'}{UnivariatePolynomialXmpPage}\ignore{UnivariatePolynomial}, and
+\downlink{`MultivariatePolynomial'}{MultivariatePolynomialXmpPage}\ignore{MultivariatePolynomial}.
+%
+\showBlurb{DistributedMultivariatePolynomial}
+\endscroll
+\autobuttons
+\end{page}
+%