# CoCoA:HGBM

## HGBM

intersection of ideals for zero-dimensional schemes

### Description

This function computes the intersection of ideals corresponding to

zero-dimensional schemes: <ttref>GBM</ttref> is for affine schemes, and HGBM for

projective schemes. The list L must be a list of ideals. The function <ttref>IntersectionList</ttref> should be used for computing the intersection of a collection of general ideals.

The name GBM comes from the name of the algorithm used: Generalized

Buchberger-Moeller. The prefix H comes from Homogeneous since ideals

of projective schemes are necessarily homogeneous.

#### Example

```  Use Q[x[0..2]];
I1:=IdealOfProjectivePoints([[1,2,1], [0,1,0]]);   -- simple projective scheme
I2:=IdealOfProjectivePoints([[1,1,1], [2,0,1]])^2; -- another projective scheme
HGBM([I1,I2]);                                     -- intersect the ideals
Ideal(x[0]^3 - x[0]x[1]^2 - 5x[0]^2x[2] + x[1]^2x[2] + 8x[0]x[2]^2 - 4x[2]^3,
x[0]^2x[1] + x[0]x[1]^2 - 3x[0]x[1]x[2] - x[1]^2x[2] + 2x[1]x[2]^2,
x[0]x[1]^3 - 2x[0]^2x[2]^2 - 5x[0]x[1]x[2]^2 - 4x[1]^2x[2]^2 +
8x[0]x[2]^3 + 10x[1]x[2]^3 - 8x[2]^4,
x[0]x[1]^2x[2] + x[1]^3x[2] - 2x[0]^2x[2]^2 - 5x[0]x[1]x[2]^2
- 5x[1]^2x[2]^2 + 8x[0]x[2]^3 + 10x[1]x[2]^3 - 8x[2]^4,
x[1]^4x[2] - 2x[1]^3x[2]^2 - 4x[0]^2x[2]^3 - 8x[0]x[1]x[2]^3
- 3x[1]^2x[2]^3 + 16x[0]x[2]^4 + 16x[1]x[2]^4 - 16x[2]^5)
-------------------------------
```

### Syntax

```HGBM(L:LIST):IDEAL
```

```   <type>groebner</type>
<type>ideal</type>
<type>list</type>
<type>points</type>
```