|
|
Line 1: |
Line 1: |
− | <command>
| |
− | <title>CharP.LAAlgorithm</title>
| |
− | <short_description>Computes the unique <tt>F_2-</tt>rational zero of a given polynomial system over <tt>F_2</tt>.</short_description>
| |
− | <syntax>
| |
− | CharP.LAAlgorithm(F:LIST):LIST
| |
− | </syntax>
| |
− | <description>
| |
− | <em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them.
| |
| | | |
− | <par/>
| |
− | This function computes the unique zero in <tt>F_2^n</tt> of a polynomial system over <tt>F_2 </tt>. It uses LA-Algorithm to find the unique zero. The LA-Algorithm generates a sequence of linear systems to solve the given system. The LA-Algorithm can find the unique zero only. If the given polynomial system has more than one zero's in <tt>F_2^n </tt> then this function does not find any zero. In this case the trivial solution is given. To solve linear systems naive Gaußian elimination is used.
| |
− |
| |
− |
| |
− |
| |
− | <itemize>
| |
− | <item>@param <em>F:</em> List of polynomials of given system.</item>
| |
− | <item>@return The unique solution of the given system in <tt>F_2^n</tt>. </item>
| |
− | </itemize>
| |
− |
| |
− | <example>
| |
− | Use Z/(2)[x[1..4]];
| |
− | F:=[
| |
− | x[1]x[2] + x[2]x[3] + x[2]x[4] + x[3]x[4] + x[1] + x[3] + 1,
| |
− | x[1]x[2] + x[1]x[3] + x[1]x[4] + x[3]x[4] + x[2] + x[3] + 1,
| |
− | x[1]x[2] + x[1]x[3] + x[2]x[3] + x[3]x[4] + x[1] + x[4] + 1,
| |
− | x[1]x[3] + x[2]x[3] + x[1]x[4] + x[2]x[4] + 1
| |
− | ];
| |
− |
| |
− | -- Then we compute the solution with
| |
− | CharP.LAAlgorithm(F);
| |
− |
| |
− | [0, 1, 0, 1]
| |
− |
| |
− | </example>
| |
− |
| |
− |
| |
− | <example>
| |
− | Use Z/(2)[x[1..4]];
| |
− | F:=[
| |
− | x[2]x[3] + x[1]x[4] + x[2]x[4] + x[3]x[4] + x[1] + x[2] + x[3] + x[4],
| |
− | x[2]x[3] + x[2]x[4] + x[3]x[4] + x[2] + x[3] + x[4],
| |
− | x[1]x[2] + x[2]x[3] + x[2]x[4] + x[3]x[4] + x[1] + x[2],
| |
− | x[1]x[2] + x[2]x[3] + x[2]x[4] + x[3]x[4] + x[1] + x[2]
| |
− | ];
| |
− |
| |
− | -- Solution is not unique i.e. [0, 1, 1, 1], [0, 0, 0, 0], and [1, 1, 1, 1] are solutions
| |
− |
| |
− | -- Then we compute the solution with
| |
− | CharP.LAAlgorithm(F);
| |
− |
| |
− | [0, 0, 0, 0]
| |
− |
| |
− | </example>
| |
− |
| |
− |
| |
− | </description>
| |
− | <seealso>
| |
− | <see>CharP.MXLSolve</see>
| |
− | <see>Introduction to CoCoAServer</see>
| |
− | <see>Introduction to Groebner Basis in CoCoA</see>
| |
− | <see>CharP.GBasisF2</see>
| |
− | <see>CharP.XLSolve</see>
| |
− | <see>CharP.IMXLSolve</see>
| |
− | <see>CharP.IMNLASolve</see>
| |
− | <see>CharP.MNLASolve</see>
| |
− | </seealso>
| |
− |
| |
− | <types>
| |
− | <type>apcocoaserver</type>
| |
− | <type>poly_system</type>
| |
− | </types>
| |
− |
| |
− | <key>charP.nlasolve</key>
| |
− | <key>nlasolve</key>
| |
− | <key>finite field</key>
| |
− | <wiki-category>Package_charP</wiki-category>
| |
− | </command>
| |