<?xml version="1.0" encoding="utf-8" ?> <!-- for emacs: -*- coding: utf-8 -*- --> <!-- Apache may like this line in the file .htaccess: AddCharset utf-8 .html --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head><title>diffOps -- differential operators of up to the given order for a quotient polynomial ring</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="___Dintegrate.html">next</a> | <a href="___D__Hom_lp..._cm_sp__Strategy_sp_eq_gt_sp..._rp.html">previous</a> | <a href="___Dintegrate.html">forward</a> | <a href="___D__Hom_lp..._cm_sp__Strategy_sp_eq_gt_sp..._rp.html">backward</a> | up | <a href="index.html">top</a> | <a href="master.html">index</a> | <a href="toc.html">toc</a> | <a href="http://www.math.uiuc.edu/Macaulay2/">Macaulay2 web site</a></div> </td> </tr> </table> <hr/> <div><h1>diffOps -- differential operators of up to the given order for a quotient polynomial ring</h1> <div class="single"><h2>Synopsis</h2> <ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>diffOps (I, k), diffOps (f, k)</tt></div> </dd></dl> </div> </li> <li><div class="single">Inputs:<ul><li><span><tt>I</tt>, <span>an <a href="../../Macaulay2Doc/html/___Ideal.html">ideal</a></span>, contained in a polynomial ring <em>R</em></span></li> <li><span><tt>f</tt>, <span>a <a href="../../Macaulay2Doc/html/___Ring__Element.html">ring element</a></span>, an element of a polynomial ring <em>R</em></span></li> <li><span><tt>k</tt>, <span>an <a href="../../Macaulay2Doc/html/___Z__Z.html">integer</a></span>, which is nonnegative</span></li> </ul> </div> </li> <li><div class="single">Outputs:<ul><li><span><span>a <a href="../../Macaulay2Doc/html/___Hash__Table.html">hash table</a></span>, the differential operators of order at most <em>k</em>of the quotient ring <em>R/I</em> (or <em>R/(f)</em>)</span></li> </ul> </div> </li> </ul> </div> <div class="single"><h2>Description</h2> <div>Given an ideal <em>I</em> of a polynomial ring <em>R</em> the set of differential operators of the quotient ring <em>R/I</em> having order less than or equal to <em>k</em> forms a finitely generated module over <em>R/I</em>. This routine returns its generating set.<p/> The output is in the form of a hash table. The key <tt>BasisElts</tt> is a row vector of basic differential operators. The key <tt>PolyGens</tt> is a matrix over <em>R</em> whose column vectors represent differential operators of <em>R/I</em> in the following way. For each column vector, consider its image in <tt>R/I</tt>, then take its dot product with the <tt>BasisElts</tt>. This gives a differential operator, and the set of these operators generates the differential operators of <em>R/I</em> of order <em>k</em> or less as an <em>(R/I)</em>-module.<table class="examples"><tr><td><pre>i1 : R = QQ[x,y,z] o1 = R o1 : PolynomialRing</pre> </td></tr> <tr><td><pre>i2 : I = ideal(x^2-y*z) 2 o2 = ideal(x - y*z) o2 : Ideal of R</pre> </td></tr> <tr><td><pre>i3 : diffOps(I, 3) o3 = HashTable{BasisElts => | dx^3 dx^2dy dx^2dz dxdy^2 dxdydz dxdz^2 dy^3 dy^2dz dydz^2 dz^3 dx^2 dxdy dxdz dy^2 dydz dz^2 dx dy dz |} PolyGens => | 0 0 0 0 0 -2xz 0 2xy yz y2 2xz 0 z2 -yz 0 0 2x2z-2yz2 | | 0 0 0 0 0 -6yz 0 0 2xy 0 8yz y2 6xz 0 0 0 0 | | 0 0 0 0 0 -6z2 0 12yz 4xz 6xy 4z2 -yz 0 -6xz 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 8xy 0 12yz 4y2 0 0 0 | | 0 0 0 0 0 -24xz 0 0 8yz 0 16xz 4xy 0 -8yz 0 0 24x2z-24yz2 | | 0 0 0 0 0 0 0 24xz 4z2 12yz 0 -4xz 0 -8z2 0 0 0 | | 0 0 0 0 0 8y2 0 0 0 0 0 0 8xy 0 0 0 0 | | 0 0 0 0 0 -24yz 0 0 0 0 16yz 0 0 8xy 0 0 0 | | 0 0 0 0 0 0 0 0 8xz 0 0 4yz 0 -16xz 0 0 0 | | 0 0 0 0 0 0 0 16z2 0 8xz 0 -4z2 0 0 0 0 0 | | 0 z y x 0 -3z 0 -3y x 0 z y 0 -x xy xz 0 | | 0 4x 0 2y 0 0 0 0 -2y 0 0 0 6z 8y 0 4yz 0 | | 0 0 4x 2z 0 0 0 0 4z 6y 0 0 0 -10z 4yz 0 0 | | 0 4y 0 0 0 24y y2 0 0 0 -12y 0 12x 0 0 4xy 0 | | 0 0 0 4x 0 -12z -2yz 0 0 0 8z 2y 0 0 0 0 0 | | 0 0 4z 0 0 0 z2 12z 0 12x 0 -6z 0 0 4xz 0 0 | | 0 0 0 1 yz 0 0 0 -1 0 0 0 0 1 -y -z -3z | | y 2 0 0 0 6 0 0 0 0 -6 0 0 0 0 0 -6x | | -z 0 2 0 2xz 0 2z -6 0 0 0 0 0 0 0 0 0 | o3 : HashTable</pre> </td></tr> </table> </div> </div> <div class="single"><h2>See also</h2> <ul><li><span><a href="_put__Weyl__Algebra_lp__Hash__Table_rp.html" title="transforms output of diffOps into elements of Weyl algebra">putWeylAlgebra</a> -- transforms output of diffOps into elements of Weyl algebra</span></li> </ul> </div> <div class="waystouse"><h2>Ways to use <tt>diffOps</tt> :</h2> <ul><li>diffOps(Ideal,ZZ)</li> <li>diffOps(RingElement,ZZ)</li> </ul> </div> </div> </body> </html>