# Difference between revisions of "ApCoCoA-1:CharP.MBBasisF2"

## CharP.MBBasis

Computing a Border Basis of a given ideal over F_2.

### Syntax

```CharP.MBBasisF2(F:LIST):LIST
CharP.MBBasisF2(F:LIST, NSol: INT):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.

Let f_1, ... , f_m is a set of polynomials which generate a zero-dimensional ideal. This function computes a Border Basis of the zero-dimensional radical ideal generated by f_1, ... , f_m and the field polynomials. Furthermore, it uses mutant strategy to compute a U-stable span.

If you want to use the second version with the parameter NSol, you need to provide the exact number of F_2 rational solutions. The first version is safe to use if you do not know the exact number of F_2 rational solutions.

• @param F: List of polynomials.

• @param NSol: Number of F_2 rational solutions.

• @return A Border Basis of zero-dimensional radical ideal generated by the polynomials in F and the field polynomials.

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

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

```

#### 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.MBBasisF2(F,NSol);

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

```