<?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>LLL(..., ChangeMatrix => ...) -- also find change of basis matrix</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="___L__L__L_lp..._cm_sp__Strategy_sp_eq_gt_sp..._rp.html">next</a> | <a href="___Givens.html">previous</a> | <a href="___L__L__L_lp..._cm_sp__Strategy_sp_eq_gt_sp..._rp.html">forward</a> | <a href="___Givens.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>LLL(..., ChangeMatrix => ...) -- also find change of basis matrix</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>(B,U) = LLL(A,ChangeMatrix=>true)</tt></div> </dd></dl> </div> </li> <li><div class="single">Inputs:<ul><li><span><tt>A</tt>, <span>a <a href="../../Macaulay2Doc/html/___Matrix.html">matrix</a></span>, over the integers, of size d by n</span></li> </ul> </div> </li> <li><div class="single">Consequences:<ul><li>The routine returns a pair of matrices, rather than just one</li> </ul> </div> </li> <li><div class="single">Outputs:<ul><li><span><tt>B</tt>, <span>a <a href="../../Macaulay2Doc/html/___Matrix.html">matrix</a></span>, the LLL matrix (also having d rows)</span></li> <li><span><tt>U</tt>, <span>a <a href="../../Macaulay2Doc/html/___Matrix.html">matrix</a></span>, the n by n invertible transform matrix</span></li> </ul> </div> </li> </ul> </div> <div class="single"><h2>Description</h2> <div>Constructs the change of basis matrix U from the basis A to the basis B. This is an invertible matrix U such that<i>AU = B</i>.<table class="examples"><tr><td><pre>i1 : A = matrix randomMutableMatrix(10,10,.5,100000) o1 = | 237 38588 -40039 0 0 0 -20475 0 -76935 0 | 0 0 0 -79732 94821 0 30541 0 0 0 | 46152 -93180 -41278 0 -21080 -97290 -99965 55546 -70145 -56762 | -76501 0 0 99877 0 0 0 0 -66526 0 | -55912 78522 -52131 0 -47791 0 0 -11760 0 0 | 0 0 1881 -96808 9018 -3842 0 0 0 0 | 0 -50664 0 0 0 9706 -61055 71458 0 85044 | 0 25600 0 0 0 -61364 0 0 0 0 | 0 -13808 52032 0 -94055 -3696 0 0 80482 5067 | 24721 0 0 -94916 0 0 0 81413 -6404 69831 ------------------------------------------------------------------------ | | | | | | | | | | 10 10 o1 : Matrix ZZ <--- ZZ</pre> </td></tr> <tr><td><pre>i2 : (B,U) = LLL(A, ChangeMatrix=>true) o2 = (| -19024 -19024 57072 -1991 19261 -19024 1152 -1451 -18484 313 | 30541 30541 3198 33739 -30541 30541 33739 0 -3198 21485 | 34493 19475 2767 -4018 11659 -77815 8393 -22150 -40401 12768 | 0 0 0 0 -76501 0 -66526 0 0 -33175 | -26391 -14631 7862 -70660 -29521 -14631 33602 14631 58900 -3456 | -1881 1961 10819 10819 1881 -1881 7057 1881 -10819 -71875 | -10391 -6511 13707 3316 10391 3195 3316 -64250 7087 9948 | -25600 35764 15436 -10164 25600 -25600 -10164 25600 10164 -30492 | -38224 -29461 6787 20595 38224 -33157 -2987 33157 -20595 14621 | 0 -11582 23164 23164 24721 -11582 16760 11582 58249 -38232 ------------------------------------------------------------------------ |, | 0 0 0 0 1 0 0 0 0 0 |) | | -1 -1 3 2 1 -1 2 1 -2 6 | | | -1 -1 3 3 1 -1 1 1 -3 5 | | | 0 0 0 0 0 0 0 0 0 1 | | | 0 0 1 1 0 0 1 0 -1 3 | | | 0 -1 1 1 0 0 1 0 -1 3 | | | 1 1 -3 -2 -1 1 -2 0 3 -6 | | | 0 -1 2 2 0 -1 2 1 -1 6 | | | 0 0 0 0 0 0 1 0 0 2 | | | 0 1 -2 -2 0 1 -2 -1 2 -6 | o2 : Sequence</pre> </td></tr> <tr><td><pre>i3 : B == A*U o3 = true</pre> </td></tr> </table> </div> </div> <h2>Further information</h2> <ul><li><span>Default value: <a href="../../Macaulay2Doc/html/_false.html" title="">false</a></span></li> <li><span>Function: <span><a href="___L__L__L.html" title="compute an LLL basis">LLL</a> -- compute an LLL basis</span></span></li> <li><span>Option name: <span><a href="../../Macaulay2Doc/html/___Change__Matrix.html" title="name for an optional argument">ChangeMatrix</a> -- name for an optional argument</span></span></li> </ul> <div class="single"><h2>See also</h2> <ul><li><span><a href="index.html" title="lattice reduction (Lenstra-Lenstra-Lovasz bases)">LLLBases</a> -- lattice reduction (Lenstra-Lenstra-Lovasz bases)</span></li> </ul> </div> </div> </body> </html>