# CoCoA:Interreduce, Interreduced

## Interreduce, Interreduced

interreduce a list of polynomials or vectors

### Description

These functions reduce each polynomial (resp., vector) using the other

polynomials (resp., vectors) as reduction rules. The process

terminates when each is in normal form with respect to the others. The function Interreduce takes a variable containing a list and overwrites that variable with the interreduced list. The second returns an interreduced list without affecting its arguments.

Note that the definition of normal form depends on the current

value of the option FullRed of the panel GROEBNER. If FullRed is FALSE

it means that a polynomial (resp., vector) is in normal form when its leading term with respect to the current term ordering cannot be reduced. If FullRed is TRUE it means that a polynomial (resp., vector) is in normal form if and only if each monomial cannot be reduced.

#### Example

```  UnSet FullRed;  -- FullRed = FALSE
Use R ::= Q[x,y,z];
Interreduced([x^3-xy^2+yz,xy,z]);
[x^3 - xy^2 + yz, xy, z]
-------------------------------
Set FullRed;  -- FullRed = TRUE (the default value)
Interreduced([x^3-xy^2+yz,xy,z]);
[xy, z, x^3]
-------------------------------
L := [x^3-xy^2+yz,xy,z];
Interreduce(L);
L;
[xy, z, x^3]
-------------------------------
```

### Syntax

```Interreduce(V:LIST of POLY):NULL
Interreduce(V:LIST of VECTOR):NULL

Interreduced(L:LIST of POLY):LIST of POLY
Interreduced(L:LIST of VECTOR):LIST of VECTOR

where V is a variable containing a list.
```

```   <type>ideal</type>
<type>module</type>
<type>list</type>
```