ApCoCoA-1:CharP.IMNLASolve

From ApCoCoAWiki
Revision as of 09:56, 7 October 2020 by AndraschkoBot (talk | contribs) (insert version info)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
This article is about a function from ApCoCoA-1.

CharP.IMNLASolve

Computes the unique F_2-rational zero of a given polynomial system over F_2.

Syntax

CharP.IMNLASolve(F:LIST):LIST

Description

Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.


This function computes the unique zero in F_2^n of a polynomial system over F_2. It uses Improved Mutant NLA-Algorithm to find the unique zero. The Improved Mutant NLA-Algorithm generates a sequence of linear systems to solve the given system. The Improved Mutant NLA-Algorithm can find the unique zero only. If the given polynomial system has more than one zeros in F_2^n then this function does not find any zero. In this case a massage for non-uniqueness will be displayed to the screen after reaching the maximum degree bound. In fact Improved Mutant NLA-Algorithm is the NLA-Algorithm with improved mutant strategy. It uses LinAlg.EF for gaussian elimination.

  • @param F: List of polynomials of given system.

  • @return Possibly the unique solution of the given system in F_2^n.

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.IMNLASolve(F);

-- And we achieve the following information on the screen together with the solution at the end.
----------------------------------------

    The size of Matrix is:
    	No. of Rows=4
    	No. of Columns=11
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    Finding Variable: x[4]
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=5
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=5
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=4
    	No. of Columns=11
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 0
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=9
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=9
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=8
    	No. of Columns=11
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 1
    The total No. of Mutants found are = 1
    The No. of Mutants of Minimum degree (Mutants used) are = 1
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=12
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=11
    	No. of Columns=12
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    x[4] = 1
    Finding Variable: x[3]
    The size of Matrix is:
    	No. of Rows=7
    	No. of Columns=10
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    x[3] = 0
    Finding Variable: x[2]
    The size of Matrix is:
    	No. of Rows=4
    	No. of Columns=5
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=4
    	No. of Columns=5
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    x[2] = 1
[0, 1, 0, 1]


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.IMNLASolve(F);

-- And we achieve the following information on the screen.
----------------------------------------

    The size of Matrix is:
    	No. of Rows=4
    	No. of Columns=9
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    Finding Variable: x[4]
    The size of Matrix is:
    	No. of Rows=9
    	No. of Columns=4
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=9
    	No. of Columns=4
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=3
    	No. of Columns=9
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 0
    The size of Matrix is:
    	No. of Rows=14
    	No. of Columns=8
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=14
    	No. of Columns=8
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=7
    	No. of Columns=14
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 2
    The total No. of Mutants found are = 2
    The No. of Mutants of Minimum degree (Mutants used) are = 2
    The size of Matrix is:
    	No. of Rows=10
    	No. of Columns=14
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=10
    	No. of Columns=14
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=13
    	No. of Columns=10
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 0
    The size of Matrix is:
    	No. of Rows=10
    	No. of Columns=9
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=10
    	No. of Columns=9
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=8
    	No. of Columns=10
    Applying Gaussian Elimination for finding Mutants...
    Gaussian Elimination Compeleted.
    No. of New Mutants found = 0
    The size of Matrix is:
    	No. of Rows=14
    	No. of Columns=24
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    The size of Matrix is:
    	No. of Rows=14
    	No. of Columns=24
    Applying Gaussian Elimination to check solution coordinate...
    Gaussian Elimination Completed.
    x[4] = NA
	Please Check the uniqueness of solution.
	The Given system of polynomials does not
	seem to have a unique solution or it has
	no solution over the finite field F2.


See also

CharP.MXLSolve

Introduction to CoCoAServer

Introduction to Groebner Basis in CoCoA

CharP.GBasisF2

CharP.XLSolve

CharP.IMXLSolve

CharP.MNLASolve